本帖最后由 izisak 于 2019-6-12 08:51 编辑
作为一个新手,比较头疼的一个问题就是如何有效找到正确的基址 大部分时候,对着搜索出来的n个结果,根本不知道那个才是正确的,可找到的资料基本都是一笔略过,回答都是凭经验,或者都跟一遍,这样的答案没法根本解决问题,结果不明白的还是不明白,换个游戏找就OVER,
都说老外学做中国菜,最怕的就是适量2字,德国人尤甚,因为适量这个词实在不好把握,需要大把的时间累计起来的经验做支持才行 痛定思痛,决定要好好搞定这个麻烦,闭关3天,终于找出了一条脉络
此篇就是要解决掉这个问题,让模糊的,没有清晰思路的新手也有一个精确的参考,明白那种情况可以继续跟踪下去,那些情况需停止跟踪 来个高大上的响亮的名称:<武大郎排除法> ^_^
因为无法判断是正确的时候,我们反过来,判断是错误的就行了,简单的逻辑就是,错误的不跟就行了
5大排除法:碰到如下相符的5种情况,无需跟踪, 那么剩下的就是正确的了
排除1:值变动不跟
排除2:空白代码不跟
排除3:直接传址不跟(根据20楼 Awesome丶ABC经验,这条保留,有些游戏还是会出现这样的情况,在此感谢Awesome丶ABC反馈)
排除4:相似地址不跟
排除5:地址不等不跟
关键点:碰到上面的5种情况就不用在跟了
下面上图具体说明:
排除大法1:值变动的不跟(如图红色的值,在ce找到的地址界面,会变来变去)
解释:如果地址都变了,就不是我们所要跟踪的地址,留着无用,删除
排除大法2:空白代码界面的不跟(右键访问该地址的弹出窗口)
解释:空白就代表没有指令在访问他,如下图,在地址18926c上右键,选择什么访问了这个地址,后弹出的是空白界面,所以这条就无需跟踪了,删除
排除大法3:直接传址的不跟(如图)
解释:也是地址右键访问后弹出的界面,没有偏移地址还怎么跟,删除
排除大法4:地址相似时不跟(如图)
解释:这层和上层或上上层相似就不跟,比如我当前跟到第3层了,找出的地址和第1层或第2层相似,这样的地址再跟下去就相当于反回到了上一层或上上一层,继续跟的结果就是不断的循环,子子孙孙无穷无尽,跟到你白了少年头也还是打转,民间俗称鬼打墙,所以碰到这样的,删除
排除大法5:地址不相等的
解释:这一层不等于上一层的,不跟,看下面的图,逻辑关系希望能看明白
希望上面第4条和第5条的逻辑关系能看明白(重点),如果明白的话,就可继续往下了,如果不明白,那还需要加强基础学习,搞明白这之间的传递关系,因为这篇并不是0基础,而是有那么一点点基础的新手教程
下面是激动人心的实战部分,将分别找植物大战僵尸阳光的基址,cs子弹的基址,然后留一个课后练习,根据上面的排除法,找出植物大战僵尸金钱的基址,cs血量的基址^_^,有一点请注意,你要学习的是找基址的方法,就是通过本篇学会如何去找基址了,结果不仅仅是这2个游戏的基址,而是其余大部分游戏的基址都能自行找到,这才是最终的目的
cs之寻找子弹基址篇
打开cs和ce,开始寻找子弹,如果不会找,请参考本论坛相关的cs找子弹教程的帖子,找到子弹的动态地址后,在子弹的地址050F7E0C上面右键,选择什么改写了这个地址,弹出改写界面,到游戏里面开一枪,会弹出代码,浏览代码,然后搜索esi的值050F7D40,ce搜索框会出现搜索结果,然后运用排除法1 2 3排除掉一部分,下面看图实操
排除过后,就选择第一条开始右键访问,然后运用排除法4 5进一步判断,经判断,这一层都正常的,可继续往下搜索067203E4
搜索到2条,添加到ce里面,在分别右键访问,依次用排除法2 3 4 5继续排查,先看第1条00179750,排查后不符合排除法4,所以干掉
再来下面一条0672066C,弹出是空白的,所以也删除,这时候第2层的地址06720460下面的2个地址都删除了,所以,这一条也不符合,删,删除后就是下面的这个图,逻辑关系要搞清楚
还有3个地址,不急喝口水,接着第1条继续来,右键访问0FCF4938,继续排除,一看是传址,所以也可以删除了,图片就不上了,希望能理解就行,你实际操作一遍就能明白,现在就只剩下2条了,右键访问0FCF494C,然后运用排除法,对比,可继续跟踪
搜索esi的值0fcf4360出现8个地址,然后排除空白的,排除变动的,会剩下2个地址,选取第1个右键访问,发现符合排除法5,所以删除这一条
继续右键访问06711BF8这一条,排查后可继续搜索eax的值
继续搜索eax的值06711B7C,看到没有,ce的绿色地址出来啦,然后用基址+偏移试试看对不对呼啦啦乌拉拉,找到基址啦
找起来简单,但做这个教程确实真的麻烦,开始植物大战僵尸
第一步,搜索到阳光的动态地址,并右键改写,然后搜索出来的地址14198530,会弹出好多个地址,然后先用1 2 3排除法过滤掉一部分,过滤后剩下了2个地址,选择第1个地址右键访问
排除后可继续搜索EDI的值024B2908,这是会出现n多的地址,慢慢的往下翻翻看,找到绿色的地址了吗,所以,这步的经验就是,搜索后,要都浏览一下,指不定基址就出现在当中,另外图片不是有2条地址吗,你也可以跟踪第2条看看,会不会被排除法里面的pass掉
剩下的你在这个排除法,找找金钱的基址,然后在找别的游戏试试看,比如吞食鱼2的鱼的条数,火炬之光里的各项值,好了,剩下的就是各位新手去验证了,现在嘛,休息,休息一会^_^
排版有点乱,本行下面的图片是多余的,不知道怎么删了,整篇重点掌握第4条和第5条的逻辑关系就算掌握的找基址的核心精华 |