植物大战僵尸:手工计算偏移地址
首先我们思考一个问题,为什么我们需要手工计算偏移地址,CE找不开心吗?当然不是,有些游戏比如像CF,只要查找改写的地址游戏就会崩溃,严重的话则会弹出TP警告框,但查找访问则不会出现这个情况,此时我们就需要进行手工计算偏移地址,来得到基址数据。
1.首先打开CE工具,并通过前期所学的内容快速的找到阳光的动态地址,然后我们在 141A0C90
地址上选择查找访问地址
,我们需要记下5560
这个偏移地址。
上图我们通过动态地址141A0C90 - 5560
即可得到上一个指针1419B730
地址,直接在CE中继续搜索这个地址。
2.此时我们选择第二个动态地址,然后再次查找是什么访问了这个地址
,可以看到是偏移是768
,继续用00FE85C8 - 768
得到FE7E60
。
3.继续查找这个动态地址FE7E60
,此时我们可以看到基址006A9EC0
,通过手工计算我们已经知道了其公式为006A9EC0 + 768 + 5560
完成。
-
搜索阳光的动态地址:18664588
-
00430A11 - 01 88 60550000 - add [eax+00005560],ecx <<
-
通过动态地址 - 偏移地址 =eax的地址
-
18664588 - 5560 = 1865F028
-
继续搜索:1865F028
-
0045B6FD - 8B 81 68070000 - mov eax,[ecx+00000768] <<
-
通过动态地址 - 偏移地址 =eax的地址
-
025B9E18 - 768 = 025B9E18
-
基址:025B9E18
-
PlantsVsZombies.exe+2A9EC0
-
总结:025B9E18 + 768 + 5560 = 阳光
文章出处:https://www.cnblogs.com/LyShark/p/15832385.html
本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?