第二步:初始阳光值为150,输入150,点击首次扫描,显示结果。
第三步:消耗(或者增加)阳光值,使阳光值产生变化为50,输入50,点击再次扫描,显示结果。
右键单击,阳光内存地址,点击什么访问了该地址。
找出偏移量,和可能的地址。
我们首次扫描未变动的初始值,然后我们进行扫描减少的数值,因为阳光产出会有CD
当阳光发光的时候,生成阳光,我们选择增大的数值,因为她CD增加了
经过测试,这个为该第一行第一列的植物的血量,为300
下坠的阳光 我们刚出现阳光,搜索未知的初始值,然后我们选择减少的数值
点击停止,显示反汇编程序,点击调试,设置断点,再次收集阳光。自动汇编,点击模板,选择CT表框架代码,再选择模板代码注入。
进行再次查询
然后我们找到基址和偏移
然后开始选择未知的初始值,然后子弹发射出去,我们选择减少的数值
射出子弹的一瞬间,选择增加的数值
改动数值后,子弹不在发射,我们对他进行汇编修改
选择自动注入
我们把代码修改为-04,射速超快
我们假设植物的冷却刷新由0 和 1来决定,那么我们可以进行不间断搜索
首先确保三个卡槽处于正常状态,我们进行新的扫描,点击豌豆射手,然后进行搜索0
处于刷新状态,我们修改为0进行查询
之后,010101 不间断刷新
我们修改之后,仍有30个无法确认,我们选择寻找一个特殊值
我们将植物,拿起,放下,发现有改写的东西
mov byte ptr [eax+ecx+70],01 也就是他将这个置换为1
EAX 为000000,ecx为108B9398 还有70的偏移量,ecx和70两个偏移量,我们先按下不表
我们去CE中搜索整个地址
我们只找到一处地址
我们点击,什么访问了这个地址
点击,放下植物,就会有很多
我们发现有很多,然后我们对他进行逐个查看,看放置植物是否会对他发生改变
发现有一个特殊的,上面很多都是变化的,我们放置植物刷新后,留下了最新的固定地址
mov esi,[esi+00000768]
偏移量 00000768
我们再去搜索试试02571130
我们搜索到四个基址
添加后锁定为1
然后我们去寻找第二个基址
同理找到一个70偏移量的植物
这时候我们发现,找到的,都是原来第一个值的基址,那么到底有什么问题呢?
这个eax就是偏移量,就是为了查看植物修改而来的,那么我们增加70+50(这里两个都是16进制)也就是C0的偏移再重新看看
那么为什么不能多加一个指针呢?因为加一个指针就跨段了,很明现eax 和70 都在一个ip之中,所以我们不能跨段