OD查找偏移表达式

该文详细介绍了如何在CE(CheatEngine)中查找并确认游戏中的血量地址,通过在OD(OllyDbg)中设置硬件断点,逐步分析汇编代码,确定偏移表达式[[[[D0DF1C]+1c]+28]+288]来定位血量值在内存中的位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、在CE中先找到血地址2DF94C28

 2、在od数据段dd 血地址   dd 2DF94C28查找到数据

 3、在血地址位置右键-断点-硬件访问-DWORD,再操作游戏会再改变这个地址代码段下断点,查找到

 4、验证查找的是否正确,在8199FA处下断点,dd edi+288处,查看是否是血地址

 5、查找偏移表达式

fild dword ptr [edi+288]

往上查找edi  

mov edi, [eax+28]  

此时偏移表达式位

[[eax+28]  +288]

在往上查找

mov eax, [eax+1c]

[[[eax+1c]+28]  +288]

继续,查找到基址

mov eax, [D0DF1C]

最终偏移表达式是

[[[[D0DF1C]+1c]+28]  +288]

 6、验证偏移表达式是否正确, 检查是否是CE查找到的血地址

dd [[[D0DF1C]+1c]+28]  +288

注: 关于为什么不是dd [[[[D0DF1C]+1c]+28]  +288],我的理解,查看汇编代码是把[edi+288]的值压入浮点栈,其实[edi+288]就是301,dd 301肯定不对,所以需要dd存入301的地址,也就是[[[D0DF1C]+1c]+28]  +288

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值