ce游戏逆向修改之植物大战僵尸

一、寻找阳光

第一步:打开ce选择进程植物大战僵尸。
ce游戏逆向修改之植物大战僵尸

第二步:初始阳光值为150,输入150,点击首次扫描,显示结果。
ce游戏逆向修改之植物大战僵尸

第三步:消耗(或者增加)阳光值,使阳光值产生变化为50,输入50,点击再次扫描,显示结果。
ce游戏逆向修改之植物大战僵尸

第四步:单击右键,选择改变该值,进行阳光值的修改。
ce游戏逆向修改之植物大战僵尸

二、找出阳光基址

右键单击,阳光内存地址,点击什么访问了该地址。
ce游戏逆向修改之植物大战僵尸
找出偏移量,和可能的地址。
ce游戏逆向修改之植物大战僵尸

点击新的扫描,勾选16进制,输入可能的地址,首次扫描。
ce游戏逆向修改之植物大战僵尸

重复操作,找出绿色的基址,点击手动添加地址。
ce游戏逆向修改之植物大战僵尸

点击指针,找出是什么修改了地址。
ce游戏逆向修改之植物大战僵尸

三、阳光产出速率

我们首次扫描未变动的初始值,然后我们进行扫描减少的数值,因为阳光产出会有CD
ce游戏逆向修改之植物大战僵尸

当阳光发光的时候,生成阳光,我们选择增大的数值,因为她CD增加了
ce游戏逆向修改之植物大战僵尸

然后我们再次搜索减少的数值
ce游戏逆向修改之植物大战僵尸

最终得到一个阳光产出CD值,我们将它修改0,阳光不断产出
ce游戏逆向修改之植物大战僵尸

我们可以找到结构体,很明显,值为我们修改的1000
ce游戏逆向修改之植物大战僵尸

经过测试,这个为该第一行第一列的植物的血量,为300

四、无限掉落阳光

下坠的阳光 我们刚出现阳光,搜索未知的初始值,然后我们选择减少的数值
ce游戏逆向修改之植物大战僵尸

然后我们搜索减少的数值
ce游戏逆向修改之植物大战僵尸

找到了地址16B8EAF8 偏移量 00005538
ce游戏逆向修改之植物大战僵尸

再次寻找029CA860 偏移量0768
ce游戏逆向修改之植物大战僵尸

修改后为1,成功
ce游戏逆向修改之植物大战僵尸

五、自动收集阳光

找到阳光的内存地址。
ce游戏逆向修改之植物大战僵尸

点击什么改写了该地址,然后收集一次阳光。
ce游戏逆向修改之植物大战僵尸

点击停止,显示反汇编程序,点击调试,设置断点,再次收集阳光。自动汇编,点击模板,选择CT表框架代码,再选择模板代码注入。
ce游戏逆向修改之植物大战僵尸

将jne修改为jmp,关闭断点,解放双手,自动收集。
ce游戏逆向修改之植物大战僵尸

自动收集+无限掉落
ce游戏逆向修改之植物大战僵尸

六、僵尸血量

首先我们让他被打一次,扫描一次减少的数值,
ce游戏逆向修改之植物大战僵尸

找到访问之后,
ce游戏逆向修改之植物大战僵尸

进行再次查询

七、关卡跳跃

当我们通关后,扫描当前关卡
ce游戏逆向修改之植物大战僵尸
ce游戏逆向修改之植物大战僵尸

然后我们修改为5,发现退回到5关了
ce游戏逆向修改之植物大战僵尸
ce游戏逆向修改之植物大战僵尸

跳关,发现计数为1
ce游戏逆向修改之植物大战僵尸

偏移量24 我们接着往上找
ce游戏逆向修改之植物大战僵尸

然后我们找到基址和偏移

ce游戏逆向修改之植物大战僵尸

八、子弹发射

我们选择一个植物,选择第三关
ce游戏逆向修改之植物大战僵尸

我们使用变速精灵修改0.1
ce游戏逆向修改之植物大战僵尸

然后开始选择未知的初始值,然后子弹发射出去,我们选择减少的数值
ce游戏逆向修改之植物大战僵尸

同时 猜测范围应该小于2000
ce游戏逆向修改之植物大战僵尸

射出子弹的一瞬间,选择增加的数值

ce游戏逆向修改之植物大战僵尸
ce游戏逆向修改之植物大战僵尸

改动数值后,子弹不在发射,我们对他进行汇编修改
ce游戏逆向修改之植物大战僵尸

点击什么改写了他
ce游戏逆向修改之植物大战僵尸ce游戏逆向修改之植物大战僵尸

我们查看反汇编
ce游戏逆向修改之植物大战僵尸

选择自动注入

ce游戏逆向修改之植物大战僵尸

跳转到这里0045f8A9
ce游戏逆向修改之植物大战僵尸

ce游戏逆向修改之植物大战僵尸

我们把代码修改为-04,射速超快

ce游戏逆向修改之植物大战僵尸

九、植物基址

我们假设植物的冷却刷新由0 和 1来决定,那么我们可以进行不间断搜索
ce游戏逆向修改之植物大战僵尸

首先确保三个卡槽处于正常状态,我们进行新的扫描,点击豌豆射手,然后进行搜索0
ce游戏逆向修改之植物大战僵尸

处于刷新状态,我们修改为0进行查询

ce游戏逆向修改之植物大战僵尸
ce游戏逆向修改之植物大战僵尸

之后,010101 不间断刷新
我们修改之后,仍有30个无法确认,我们选择寻找一个特殊值
ce游戏逆向修改之植物大战僵尸

我们将植物,拿起,放下,发现有改写的东西

ce游戏逆向修改之植物大战僵尸
ce游戏逆向修改之植物大战僵尸

mov byte ptr [eax+ecx+70],01 也就是他将这个置换为1
EAX 为000000,ecx为108B9398 还有70的偏移量,ecx和70两个偏移量,我们先按下不表
我们去CE中搜索整个地址

ce游戏逆向修改之植物大战僵尸
ce游戏逆向修改之植物大战僵尸

我们只找到一处地址
我们点击,什么访问了这个地址
点击,放下植物,就会有很多
ce游戏逆向修改之植物大战僵尸
ce游戏逆向修改之植物大战僵尸

下一个偏移量为00000144 EDI为12aada50
ce游戏逆向修改之植物大战僵尸

我们发现有很多,然后我们对他进行逐个查看,看放置植物是否会对他发生改变
ce游戏逆向修改之植物大战僵尸

发现有一个特殊的,上面很多都是变化的,我们放置植物刷新后,留下了最新的固定地址
ce游戏逆向修改之植物大战僵尸

mov esi,[esi+00000768]
偏移量 00000768
我们再去搜索试试02571130
ce游戏逆向修改之植物大战僵尸

我们搜索到四个基址
添加后锁定为1

ce游戏逆向修改之植物大战僵尸
ce游戏逆向修改之植物大战僵尸

然后我们去寻找第二个基址
同理找到一个70偏移量的植物

ce游戏逆向修改之植物大战僵尸
ce游戏逆向修改之植物大战僵尸

我们将几个基址进行尝试后,发现只有一个可以得出数值
ce游戏逆向修改之植物大战僵尸
ce游戏逆向修改之植物大战僵尸

这时候我们发现,找到的,都是原来第一个值的基址,那么到底有什么问题呢?
ce游戏逆向修改之植物大战僵尸

原来在这里
ce游戏逆向修改之植物大战僵尸

这个eax就是偏移量,就是为了查看植物修改而来的,那么我们增加70+50(这里两个都是16进制)也就是C0的偏移再重新看看
ce游戏逆向修改之植物大战僵尸
ce游戏逆向修改之植物大战僵尸

那么为什么不能多加一个指针呢?因为加一个指针就跨段了,很明现eax 和70 都在一个ip之中,所以我们不能跨段

ce游戏逆向修改之植物大战僵尸

上一篇:docker社区版卸载与安装


下一篇:Centos安装docker