前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >植物大战僵尸:手工计算偏移地址

植物大战僵尸:手工计算偏移地址

作者头像
微软技术分享
发布2022-12-28 15:11:58
3910
发布2022-12-28 15:11:58

首先我们思考一个问题,为什么我们需要手工计算偏移地址,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 = 阳光
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-01-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档