-
-
[原创]CheatEngine setp9
-
发表于: 2017-12-10 18:40 3506
-
Step 9: Shared code: (PW=31337157)
前两天发现ce这个软件,闲的没事做了做内置的Tutorial 3.3
前7关都没啥难度,8费了一会时间,被mov esi,esi 搞糊涂的,好在很快搞明白了
第9关完全没思路,毕竟不会汇编,不会任何编程软件,网上找了个教程,是利用了程序里的team分组来识别敌我,然后分别控制加血和锁血
教程里用了一些分析的功能猜测出了组的判断码,而这些东西对我而言就有点难了。
后来根据自己的理解和研究,利用auto assable里的code injection制作了自己版本的锁血和一击必杀
思路为判断出每次攻击的血量和敌人初始血量分别插入了两段代码,当攻击的血量大于1时则跳转指令,或当发现血量为500时将血量归0,因此实现了以上功能。
第一步,根据指示搜索出血量的地址
第二步,对刚找到的地址做谁更改了这个地址的查询,然后可以看到寄存器里已经标示出了目标的血量和攻击的血量
第三步,在相关代码处插入代码(以下代码有细微的调整)
此为一击必杀或者第一回合死亡,当然也可以锁自己血,然后将对手的血量归0
[ENABLE] //code from here to '[DISABLE]' will be used to enable the cheat alloc(newmem,2048) label(returnhere) label(originalcode) label(exit) newmem: cmp eax,43f98000 je exit originalcode: mov eax,[ebp-04] mov [ebx+04],eax jmp returnhere exit: mov [ebx+04],0 jmp returnhere "Tutorial-i386.exe"+265B4: jmp newmem nop returnhere: [DISABLE] //code from here till the end of the code will be used to disable the cheat dealloc(newmem) "Tutorial-i386.exe"+265B4: mov eax,[ebp-04] mov [ebx+04],eax //Alt: db 8B 45 FC 89 43 04
此为锁血
[ENABLE] //code from here to '[DISABLE]' will be used to enable the cheat alloc(newmem,2048) label(returnhere) label(originalcode) label(exit) newmem: cmp esi,1 jg returnhere originalcode: mov eax,[ebp-04] mov [ebx+04],eax exit: jmp returnhere "Tutorial-i386.exe"+265B4: jmp newmem nop returnhere: [DISABLE] //code from here till the end of the code will be used to disable the cheat dealloc(newmem) "Tutorial-i386.exe"+265B4: mov eax,[ebp-04] mov [ebx+04],eax //Alt: db 8B 45 FC 89 43 04
仅以此文留念。
还请各位高手大拿轻拍
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
赞赏
他的文章
- [求助]逆向小白咨询RSA签名 3156
- [求助]逆向小白咨询特殊构造文件,轻拍 3341
- [求助] olldbg 求助 2203
- [求助]求一段算法的逆向算法 3643
- [分享]植物大战僵尸 <秒杀> 8701
看原图
赞赏
雪币:
留言: