当前位置: 首页 > news >正文

甄别伪代码中的二维数组

以下是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]

http://www.cnnetsun.cn/news/64845.html

相关文章:

  • LabVIEW 携手 YOLOv8:全方位视觉处理的奇妙之旅
  • 某雷赛86闭环步进驱动方案-HBS86H整体方案及原理图、PCB、无错无警告代码打包
  • 【从0到1学RabbitMQ】十分钟上手 RabbitMQ:Docker 部署 + Spring Boot 自动化配置全攻略
  • 【论文笔记•(多智能体)】A Knowledge-driven Adaptive Collaboration of LLMs for Enhancing Medical Decision-making
  • 通过SEO推广LobeChat博客内容,带动大模型Token购买转化
  • 【Svelte】重定向页面
  • 基于SpringBoot的日用品仓储管理系统的设计与实现
  • 基于SpringBoot的校园论坛交流系统
  • AutoGPT如何处理模糊目标?自然语言理解边界探讨
  • 清华镜像站推荐:Miniconda下载提速80%的秘密武器
  • update.py update脚本 git一键上传push脚本 - Git自动化推送代码的几种方式及实用脚本
  • 从GitHub获取Qwen3-8B最新镜像并完成本地化部署
  • Ubuntu安装完成后配置PyTorch-GPU的完整流程
  • 购买GPU算力租用Qwen3-14B实例的性价比分析
  • LobeChat前端性能优化建议:减少加载时间提升访问量
  • 学术研究新利器:Qwen3-8B开箱即用镜像发布
  • 使用wget命令从清华源下载PyTorch安装包的脚本示例
  • AutoGPT镜像适用于科研场景吗?高校团队已投入使用
  • GitHub热门项目推荐:基于Qwen3-14B开发的企业级AI助手
  • 从零到网络安全专家:一张全景路线图(2025版)
  • LeetCode 46/51 排列型回溯题笔记-全排列 / N 皇后
  • 一周回顾:勒索飙升、AI上阵、人形机器人被盯上
  • 嵌入式FOTA进阶:文件系统直接升级+串口分段传输深度指南!
  • AutoGPT提示词工程技巧:提升任务拆解准确性
  • Stable Diffusion AIGC 视觉设计实战教程之 07-图生图
  • 当毕业论文不再是“一个人的深夜战场”:一位研究生眼中的AI科研协作者如何重塑写作流程
  • 统计提交svn代码行数,文件以及文档
  • 解锁学术新次元:书匠策AI科研工具为毕业论文注入智慧动能
  • GPT-5.2全面解析:AI“打工能力“大提升,程序员职场必备技能
  • vue-springboot基于Java医院药品管理系统的设计与实现_8z88u88g