结合OD和《植物大战僵尸》,实现随意过关
- 首先我们使用CE,导入植物大战僵尸。我所利用的模式就是“宝石迷阵”这个娱乐模式。
图 1.1 导入游戏进程
图 1.2 宝石迷阵 - 我们需要找调用CALL的来源。我们搜索下面的程序的完成数。随后进行一次消除使数字增加从而进行再次搜索。我们使用该方法多次扫描,直到确认结果值地址。
图 1.3 完成数
图 1.4 增加一次结果
图 1.5 首次扫描结果
图 1.6 再次扫描结果
图 1.7 结果值地址
图 1.8 汇编指令
- 接下来把得到的地址放进OD里面,下断点分析查看该结果值的访问信息。
图 1.9 OD中设置断点
图 1.10 在OD中附加进程
图 1.11 OD附加后界面 - 进入游戏再消除一个以后,观察调用,发现了调用列表使用第一个进行尝试,在第一个显示位置下断点。随后进入游戏再次消除一个,返回OD进入断点处查看返回值。
图 1.12 在调用处下断点
图 1.13 返回值为14h - 根据返回值,我们判断参数有5个,我们在返回到CALL 在push 0x1下个点F8往下走,分析参数。
图 1.14 分析参数 - 可见,ebx是x坐标,esi是y坐标而ecx中存着基址。参数已经分析完毕。测试该call是不是我们所需要的,现在我们的进度是7个。调用一次call,查看进度有无改变。
图 1.15 当前进程
图 1.16 编写call
- 发现call调用后,进度增加了,并且返回“执行成功”。紧接着,我们开始分析静态地址
图 1.17 call调用成功
图 1.18 分析静态地址
图 1.19 查找地址
图 1.20 基址
- 我们随便打开一个其他模式根据基址修改call的代码。
图 1.21 更改代码
图 1.22 游戏界面
图 1.23 成功界面 - 发现无论什么模式,都调用100次call就可以通关了,至此随意过关破解完成。
结合OD和《植物大战僵尸》,实现随意过关相关推荐
- 植物大战僵尸食人花无cd逆向分析
我用的这个版本是最开始的: 首先还是用ce附加上去,先让食人花吃一个僵尸,切换到ce,这时候选未知值扫描,然后next scan选未变化的值,切换到植物大战僵尸,这时候cd在变,然后切换到ce,选变化 ...
- 用od、ce实现植物大战僵尸自动收集阳光
找地址 首先使用ce查看阳光的地址 然后F6是什么改写了地址 地址找到了,复制00430A11这个地址,在od中搜索 分析 打开od,file–>attach(关掉ce 才可以打开进程),找到植 ...
- 植物大战僵尸如何修改金币和关卡
挑战 有的玩家在玩游戏时,可能并不想⼀关⼀关地慢慢玩,⽽是希望可以直接跳到最后⼀关,或者从⾃⼰指定的关卡开始,⽐如 经典的<植物⼤战僵⼫>:再就是怎么能够「开挂」,得到更多的⾦钱.更⾼的属 ...
- c语言游戏call调用,C语言-植物大战僵尸-刷僵尸call;fps游戏CS-方框透视(矩阵+传统)...
C语言-植物大战僵尸-刷僵尸call:fps游戏CS-方框透视(矩阵+传统)前言:大家好,我是向上先生,嘿嘿~最近在学习逆向.反汇编等等,首先我在非常感谢52pojie这个平台,差不多很多学习资源都是 ...
- C/C++编程笔记:经典游戏植物大战僵尸游戏辅助,源码送上
从前一直迷恋植物大战僵尸这款游戏,从一开始的水平不行,到后来经常看植物大战僵尸的过关视频来提升自己的游戏水平,到现在游戏是玩的越来越好了,后来为了让游戏通关更快,就写了一个简单的修改阳光和种植植物后免 ...
- 学习逆向知识之用于游戏外挂的实现.第二讲,快速寻找植物大战僵尸阳光基址.以及动态基址跟静态基址的区别...
通过游戏外挂,学习逆向技术之快速寻找植物大战僵尸阳光基址.以及动态基址跟静态基址的区别 一丶静态基址. 动态基址. 基址的区别 通过上一讲超级马里奥的游戏外挂技术制作.我们学习到了静态基址.以及观看内 ...
- 使用Python对植物大战僵尸学习研究
根据上一篇 使用使用Python学习win32库进行内存读写 中,使用Python win32库,对一款游戏进行了读内存 操作. 今天来写一下对内存进行写的操作 正文 要进行32位的读写,首先了解一下 ...
- 植物大战僵尸——最强阵容
前言 植物大战僵尸是我以前很喜欢玩的一个游戏,这游戏很简单,但又富含智慧,并且男女无差.老少兼宜,我尤其喜欢玩其中生存模式下的--泳池(无限) ^ _ ^ 最初尝试 开始尝试随意玩,不管什么阵容不阵容 ...
- 植物大战僵尸自动拾取阳光
这篇博客我们主要记录一下植物大战僵尸的自动拾取阳光的功能,主要用到od,我们要简单的掌握寻找call的操作.以及简单的对汇编进行分析. 我们先用ce找到跟阳光有关的地址. 载入程序,两次搜索数值找到跟 ...
最新文章
- tomcat环境部署
- 重要的事情说三遍!网站如何改版才能最大限度降低影响率?
- GVRP和VTP比较
- UNIX再学习 -- 发送信号
- python 不同模块之间的引用错误问题
- java多线程 -- ReadWriteLock 读写锁
- matlab无限表示,[求助] 关于matlab无限循环的问题
- Grid表格的js触发事件
- Cracked me --1--Acid_burn
- eslint vscode 自动格式化_使用 VSCode 的必备三大神器,这才是开发 Vue 的真香解决方案...
- Bolt XML和JQBolt Lua代码自动补全插件配置教程
- 介绍KMP算法思想(例题:ACWING 831 kmp字符串)
- windows下的内存型下载者病毒
- Android百度地图自定义添加Marker点
- UnboundLocalError: local variable ‘count‘ referenced before assignment
- 嵌入式系统与普适计算
- 一篇让我感动的文章: 五年考研
- linux 字符界面 office,Linux系统下对比永中office和wps的界面及字体,附对比图
- 使用git提交代码到仓库报错总结
- 查看windows服务器型号,windows 查看服务器型号