news 2026/5/1 10:17:42

甄别伪代码中的二维数组

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
甄别伪代码中的二维数组

以下是IDA生成的关于变量dword_2810F8C伪代码:

int dword_2810F8C[]; // weak int page_s_tactical__g_num_rte[]; // weak if ( v22 > 5 ) //这是Ada编译器插入的判断下标是否合法的语句 __gnat_rcheck_05("page_s_tactical.adb", 1252); if ( v29 > 1u ) //这是Ada编译器插入的判断下标是否合法的语句 __gnat_rcheck_06("page_s_tactical.adb", 1252); dword_2810F8C[6 * v29 + 1 + v22] = *(_DWORD *)(a2 + 12 * (v26 - 1) + 8);

根据以上两行if语句,可知v22与v29是数组下标。

v22的合法数值范围是0..5。

v29的合法数值范围是0..1。

从汇编清单中可知page_s_tactical__g_num_rte的起始地址是0x2810F90:

bss:02810F8C ; int dword_2810F8C[] .bss:02810F8C dword_2810F8C dd ? .bss:02810F90 ; int page_s_tactical__g_num_rte[] .bss:02810F90 _page_s_tactical__g_num_rte dd ? .bss:02810F94 align 40h .bss:02810FC0 ; char page_s_tactical__g_exec_pressed[]

page_s_tactical__g_num_rte与dword_2810F8C相差4个字节。

page_s_tactical__g_num_rte的长度是48个字节。

由此可见,

dword_2810F8C[6 * v29 + 1 + v22]

可改写为:

page_s_tactical__g_num_rte[v29][v22]

因此,page_s_tactical__g_num_rte可以定义为:

Int page_s_tactical__g_num_rte[2][6];

其他关于dword_2810F8C的伪代码都可以进行相应的修改。例如:

dword_2810F8C[6 * a1 + page_s_tactical__num_page[a1]]

可改为:

page_s_tactical__g_num_rte[a1][page_s_tactical__num_page[a1] - 1]

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 8:05:30

Latex撰写学术论文:嵌入PyTorch实验图表的方法

LaTeX 撰写学术论文:嵌入 PyTorch 实验图表的实践路径 在深度学习研究中,实验与表达从来不是割裂的两个环节。我们训练模型、调参优化,最终目的不只是跑出一个高分数字,而是将整个过程清晰、可信地呈现给同行评审。然而&#xff0…

作者头像 李华
网站建设 2026/4/30 18:08:34

Git标签管理Release版本:PyTorch项目发布规范

Git标签管理Release版本:PyTorch项目发布规范 在AI工程实践中,最让人头疼的往往不是模型结构设计或超参数调优,而是“为什么这个模型在你那边能跑,在我这边就报错?”——这种典型的环境不一致问题,几乎困扰…

作者头像 李华
网站建设 2026/5/1 2:02:28

视频汇聚平台EasyCVR打造地下车库智慧监控安防新体系

随着居民生活品质的提升,大型商业建筑和住宅小区纷纷配套建设地下停车库。但是地下车库盗窃、失火、恶意毁坏车辆、外部人员随意进出等事件频发,部署视频监控系统成为保障地下车库的安全关键举措。视频汇聚平台EasyCVR凭借多协议兼容、智能分析核心能力&…

作者头像 李华
网站建设 2026/5/1 2:01:22

基于SpringBoot的商场停车场管理系统

基于SpringBoot的商场停车场管理系统设计与实现 第一章 系统开发背景与现实意义 商场作为人流车流密集场所,传统停车场管理模式痛点突出:高峰时段车主找位耗时久,易造成入口拥堵;缴费依赖人工窗口或扫码桩,排队等待影响…

作者头像 李华
网站建设 2026/5/1 2:03:13

大模型微调不再难!11种核心方法全面解析,从入门到精通一文掌握

如今AI大模型已经渗透到各行各业,从智能客服精准回应客户疑问,到内容创作快速生成优质文稿,从数据分析挖掘潜在规律,到科研辅助加速成果转化,几乎都能看到它们的身影。但很多人不知道的是,一个预训练好的大…

作者头像 李华
网站建设 2026/5/1 2:08:06

域名怎么反查?

在域名交易、品牌保护以及网络安全排查等场景中,“反查域名”是一项非常实用的操作。简单来说,域名反查就是通过某个信息点(如邮箱、手机号、IP、注册商、DNS等)去反查与之关联的其他域名,以便了解注册者的整体资产、网…

作者头像 李华