- 最新高二英语教学反思【优秀5篇】2024-12-13
- 英文推荐信_122024-12-13
- 留学瑞典2024-12-13
- 澳洲出国留学详解!附真实经历2024-12-13
- 移民加拿大最容易的三个省,门槛低,名额充足!2024-12-13
- 出国留学好处多还是坏处多?2024-12-13
- 大学排名_22024-11-26
- 985/211院校均分85能申请英国哪些大学研究生?这八大名校妥妥滴2024-11-26
- 美术生留学哪里好?2024-11-26
- 专科留学去哪个国家比较好?2024-11-26
奇亿娱乐-奇亿注册登录站
邮箱:youweb@admin.com
手机:13899999999
电话:020-88888888
地址:广东省广州市番禺经济开发区
本帖最后由 qingyf 于 2019-3-30 01:30 编辑 之前录过一个视频我们使用了CE代码注入的功能修改鬼泣5实现各种功能 地址https://www.52pojie.cn/thread-910487-1-1.html 有兴趣的可以看看 这里贴上之前CE自动汇编无敌的代码 [Lua] 纯文本查看 复制代码 [ENABLE] alloc(newmem,2048,"DevilMayCry5.exe"+116B0C4) label(returnhere) label(originalcode) label(exit) newmem: originalcode: mov [rdi+10],(float)7000.0 exit: jmp returnhere "DevilMayCry5.exe"+116B0C4: jmp newmem returnhere: [DISABLE] dealloc(newmem) "DevilMayCry5.exe"+116B0C4: movss [rdi+10],xmm1 //Alt: db F3 0F 11 4F 10 细心的朋友就发现了 我们注入的地址是"DevilMayCry5.exe"+116B0C4: 这种模块名加地址的格式注入就非常的简单 而且重启游戏后,代码仍然有效 但是 如果我们要注入的地址是动态地址怎么办呢? 比如今天我们要动手的游戏 WEgame版电竞传奇地址格式是2437E8ED - 89 48 10 - mov [eax+10],ecx 这种动态地址注入的话重启游戏后是绝对无效的 甚至可能会导致游戏闪退的各种错误 那么我们应该怎么办呢 没错 就是我们今天要说的AOB注入 所谓AOB注入原理就是通过特征码找到匹配的地址 然后对匹配到的地址进行注入修改操作 反正我们大概知道就是这么个意思就行了 好的教程开始 首先定个小目标 我们今天要实现的是修改每次获得的游戏资源数量 至少得翻个10倍对吧 通过简单的4字节搜索找到钱钱的地址 然后右键什么改写了什么地方 然后我们在游戏中花点钱钱在赚点钱钱后看看结果 代码的意思是把ECX的值放在 [eax+10]里面 [eax+10]也就是 1F401A68+10=1F401A78这就是我们的钱钱的地址 我们可以发现不管赚钱还是败家 都是同一个地址代码在操控着我们的钱钱 我们点击上图的反汇编程序进去瞧一瞧 看见了吗 地址是2496B4AD 不是上一篇鬼泣五月哭视频里的模块加地址这种格式"DevilMayCry5.exe"+116B0C4: 那么按照上篇讲的可以改吗 当然是可以的 但是重启后就改不了了 不相信的小伙伴可以改改试试 为了节约大家时间我就不试了 好 继续 找到这个管钱的地址后作为一个好习惯我们应该看看它除了管钱还管不管其他什么 右键地址选择指令访问的地址 康康我们发现了啥 它不但管钱还管吃喝拉撒!你说巧不巧 既然如此那就盘它 直接工具-自动汇编走起 然后加入框架代码点击AOB注入 此时会弹出两个框 萌新直接确认就行 我实在懒得截图了 CE会自动加入如下代码 [Lua] 纯文本查看 复制代码 [ENABLE] aobscan(INJECT,89 48 10 EB 37) // should be unique alloc(newmem,$1000) label(code) label(return) newmem: code: mov [eax+10],ecx jmp 2496B4E9 jmp return INJECT: jmp newmem return: registersymbol(INJECT) [DISABLE] INJECT: db 89 48 10 EB 37 unregistersymbol(INJECT) dealloc(newmem) 值得一提的是 ce自作聪明的生成了一行jmp 2496B4E9代码,这行我们要手动删除 因为这个2496B4E9地址是动态的 我们每次启动游戏都不一样 直接删掉即可 代码中的89 48 10 EB 37就是特征码 我们可以测试下在CE中搜索这个特征码 看到了吗 搜索到的地址和我们之前的管家婆地址一模一样啊 接下来就简单了修改代码走起 由于我打算每次金钱改动都加10000,其他小星星啥的改动的时候加1000 所以要处理下共用代码的问题 这个上篇文章讲过 这里不多说了 下面是改过后的代码 [Lua] 纯文本查看 复制代码 [ENABLE] aobscan(INJECT,89 48 10 EB 37) alloc(newmem,$1000) label(code) label(return) label(qingyf) newmem: cmp [eax+8],3 je qingyf qingyf: add [eax+10],#10000 code: add [eax+10],#1000 jmp return INJECT: jmp newmem return: registersymbol(INJECT) [DISABLE] INJECT: db 89 48 10 EB 37 unregistersymbol(INJECT) dealloc(newmem) 然后我们测试下看看 ok可行 好的啰嗦一大堆到此结束 觉得有用的同学加个分呗 |