谁的坏叔叔 发表于 2019-2-25 12:20

植物大战僵尸一个调用CALL通关所有模式关卡

本帖最后由 luoyuchen 于 2019-2-25 19:46 编辑

{:1_926:}还是我分析的植物大战僵尸。但是这是我原创。自己分析出来的。当然很多都会觉得这个植物大战僵尸很简单。对 我们需要的不是简单不简单。我们要的是过程对吧。
就好比大型网络游戏,只要找到CALL一样可以实现某些功能。 这个不分单机还是网游。
那我们还是直接开始。
那我们就像我们的标题一样,我所利用的模式就是“”宝石迷阵“”这个娱乐模式。

我们还是需要找一下调用CALL的来源。我们搜索下面的那个完成数。
首先我们的思维可以是这个样子:我们消除一个,那么是不是就会调用那么消除的CALL呢?
当然,是或者不是我们都要通过实践的分析才能得出结论。
我们得到了地址以后还是一样。查看是谁访问了这个地址;因为我们要找出来源嘛,对吧!
从下图中我们可以看出,我再一次对ADD下手了。


接下来我们把我们得到的地址扔进OD里面下段分析。

断下来以后还是一如既往的查看返回。这儿我们从第一个开始。

我们在CALL下个断点,返回游戏消除一个。让程序断下来。

断下来以后我们应该怎么办?答案是 我们必须养成的一个习惯。查看返回了多少个参数。这个习惯必须要有。
那么这儿返回的是14 转为十进制那么就是20计算为:20/4=5个参数

我们在返回到CALL 在push 0x1下个断 F8往下走分析参数

那么参数已经分析完了。我们又不知道这个CALL到底是不是我们要找的怎么办?
那我们肯定要用代码注入器测试一下对吧 。现在我们的是11个。

我们CALL一下。变成12了对吧

我们在CALL 10下试试,变成了22。那么我们的代码就没问题了

还是老样子,我们分析静态地址。


诶,是否少了些什么对吧。这给我们的标题不一样啊。
我们继续往下看。

在这个图中,我们什么都看不出来。普普通通。
那接下来呢。
提示:完成75次配对完成关卡。
但是这不是那个模式啊。

不管是不是那个模式,结果这一关我们两个僵尸都没出来,就通关了。

我们总结一下:
不管什么时候,只要调用那个CALL 就会调用那个模式。 当程序判断75次完成以后,那么通关。

其实我们最大的快乐,不是就一次次分析程序失败以后,得到的成功所带来的快感么。
你可能在一个地方失败几十次,几百次。但不管你失败过多少。当你成功的时候你都会觉得这是值得的。

这儿有些朋友需要的视频讲解:https://pan.baidu.com/s/1cLNTtC3bpwxmKBXrJaCpoQ

谁的坏叔叔 发表于 2019-2-25 13:55

孤独的Provence 发表于 2019-2-25 12:56
能不能发下德玛西亚3.0这个工具 谢谢

链接: https://pan.baidu.com/s/1MA3vQrnTV-QhItPOP54rGw 提取码: vcqn 复制这段内容后打开百度网盘手机App,操作更方便哦

超正义的小煌 发表于 2019-2-25 12:38

同意观点!
其实我们最大的快乐,不是就一次次分析程序失败以后,得到的成功所带来的快感么。
你可能在一个地方失败几十次,几百次。但不管你失败过多少。当你成功的时候你都会觉得这是值得的。

z568364797 发表于 2019-2-25 12:45

额,为啥都拿植物大战僵尸开刀呢?嫌他好欺负啊{:1_890:}{:1_894:}

孤独的Provence 发表于 2019-2-25 12:56

能不能发下德玛西亚3.0这个工具 谢谢

豪的er 发表于 2019-2-25 14:01

感谢分享思路

15736251289 发表于 2019-2-25 15:29

z568364797 发表于 2019-2-25 12:45
额,为啥都拿植物大战僵尸开刀呢?嫌他好欺负啊

我也在弄植物僵尸不过我是第一次

zjzjf 发表于 2019-2-25 15:45

谢谢分享,学习了

a819425 发表于 2019-2-25 16:11

好的总结一下学渣的看法“打扰了:'(weeqw”

mhaitao 发表于 2019-2-25 16:51

原谅我,看了半小时愣是没看懂;www
页: [1] 2 3
查看完整版本: 植物大战僵尸一个调用CALL通关所有模式关卡