OD找基址
CE OD 查找人物当前地图名称

登陆游戏附加CE 查找人物当前地图名称扫描类型文本
2011-1-9 17:20:26 上传
下载附件(106.42 KB)
切换场景再次搜索地图名称
只剩下一个地址CE结束OD附加游戏进程记住地址"78827408”
DC 查看确实是峨嵋山
HW 硬件下断此地址
游戏切换场景OD断下
注意模块名称不是游戏领空ALT+F9 或CTRL+F9 返回游戏领空
CTRL+A 分析游戏
调试硬件断点删除硬件断点F9运行游戏
EAX来自ESI+58
查找ESI
ESI来自ECX 继续往上查找当前子程序没有ECX 需要返回上级子程序单击子程序头
本地调用来自00407346 右键单击返回
仍然没有ECX 继续返回
单击程序头没有返回地址F2下断游戏切换场景游戏断掉在堆栈看注释
右键单击注释返回上级
有一个小跳网上看ECX 来自ESI+3A38
查找ESI
ESI再次来自ECX 查找ECX
程序头没有返回地址再次F2下断看堆栈注释返回
ECX=774B14
也就是[[[774b14]+3a38]+58]
在CE验证手动添加地址2级指针
得出结果为乱码比较CE一开始的地址78827408 和指针地址788273F8 两者相差10
把58+10=68
验证成功至于为什么+10 不明白
这个基址可以遍历周围玩家怪物矿什么的希望其他人也能发点天龙的资料。
OD找DNF基址

用OD搜基址,首先我们要会附加DNF进程,很多人说附加不了DNF进程在这里我就详细的说下附加的方法1.登录游戏,这个没啥说的了2.打开OD附加DNF进程,这时候大家会发现找不到DNF进程。
没关系3.打开驱动工具,passtx2文件拖拽或者浏览然后点安装,然后点启动4.这时候你在重新附加DNF进程你就会发现可以找到DNF进程啦。
5.虽然附加成功了,但是你会发现OD的窗口还是黑色的,这样你会很烦恼把,没关系你点击OD右上角的按钮你会发现如图:这样你就成功一半啦!接下来进入搜索的步骤!搜索方法:首先我们要跳转一下按CTRL+G键输入00400000人物基址:按CTRL+S键输入特征码→mov eax,dword ptr ds:[esi]push 0x1Fmov ecx,esicall dword ptr ds:[eax+0x1a8]加密解密:按CTRL+S键输入特征码→push 3F公告地址、商店地址:按CTRL+S键输入特征码→push 4AA9技能地址:按CTRL+S键输入特征码→PUSH EDIPUSH EDIMOV EAX,DWORD PTR DS:[ESI] PUSH ECXMOV ECX,DWORD PTR SS:[EBP-14] PUSH EDXPUSH EDI动作CALL:按CTRL+S键输入特征码→mov eax,dword ptr ds:[edi]push ebxpush ebxpush ebxpush ebxpush ebxmov ecx,edi物品CALL:按CTRL+S键输入特征码→mov ecx,dword ptr ds:[edx+edi*4] mov eax,dword ptr ds:[ecx]call dword ptr ds:[eax+18]mov cl,byte ptr ds:[esi+34]帐号基址的方法我在这里在说下,用到小烦搜索工具登录游戏打开工具选择只搜基址输入登录游戏QQ的张帐号直接点搜索可以啦,如图:1.技能参数搜索PUSH EDIPUSH EDIMOV EAX,DWORD PTR DS:[ESI] PUSH ECX技能参数1 010A5E88技能参数2 010A5E8C2.仓库基址和商店基址push 2D方法二push eaxpush 0x2D商店基址 011A2804 仓库基址 009C5D103.加密参数push 3Fpush edi加密参数1 013BBE4C加密参数2 013BBE484.公告基址和商店基址push 0push 0push 1F公告基址 00AEB900商店基址 011A28045.人物基址mov eax,dword ptr ds:[esi] push 0x1Fmov ecx,esi人物基址 011F8FC46.动作CALL:按CTRL+S键输入特征码→mov eax,dword ptr ds:[edi]push ebxpush ebxpush ebxpush ebxpush ebxmov ecx,edi动作CALL 2B47.物品CALL:按CTRL+S键输入特征码→mov ecx,dword ptr ds:[edx+edi*4]mov eax,dword ptr ds:[ecx]call dword ptr ds:[eax+18]mov cl,byte ptr ds:[esi+34]物品CALL 4C88.3S评分找法push eax 或者 push eax push 0x8 push -0x1 push 0x6 push ecx评分基址 0119CE909.地图基址找法push eaxpush ecxpush 0x0地图基址 01094D3810.怪物数量找法push eaxpush -0x1push 0x156push 0xA怪物数量 011FB13811.角色基址找法pop ediand cl,0xEFpop esi角色基址 0118A24012.过图CALL找法mov eax,dword ptr ss:[ebp-0x14] mov ecx,dword ptr ss:[ebp-0x24] mov ecx,dword ptr ds:[ecx+0x48] push eax过图CALL 004A1020。
外挂基础知识

原创[基础1] 什么是基址?我们可以想象一棵苹果树,树有根,树上也有苹果,某个苹果对应某个偏移,而树根就是基址,通过基址往上找就能找到某个苹果而找到的这个苹果,相对于有个偏移。
通过基址+偏移就能确定是哪个苹果。
例如:基址=00401000 偏移是20,代表1号苹果,那OD里:dd [00401000]+20 就能找到这个1号苹果。
dd命令是以内存地址的方式查看数据。
原创[基础2] 为什么要找基址?因为游戏退出基址不会变化,只有游戏更新后才会变化,而要是用找到的内存地址,例如:血的内存地址,游戏退出是会变化的,不方便我们编写辅助调用。
原创[基础3] 用什么工具适合找基址和偏移?Ollydbg(简称OD)Cheat Engine(简称CE)强烈推荐这两款游戏数据分析高手都必备的工具。
原创[基础4] 偏移最多有多少级?最少偏移就是一个基址代表一个数据,例如:dd 00401000 就是血数量最多偏移可以是无穷大,分析过最多的是20多偏移。
例如:dd [00401000]+20 20就是一级偏移而类推:dd [[00401000]+20]+30 30就是二级偏移原创[基础5] 什么是CALL?CALL就是相当于易语言里的子程序,相当于C++里面的函数。
每个CALL都有用途,很多独立的功能都可以封装在CALL里,这样调用这个CALL也就调用了对应封装的功能。
CALL有参数,也有返回值,参数可以是没有,也可以是多个。
返回值一般通过EAX寄存器返回。
原创[基础6] 如何识别CALL有多少个参数?实战举例说明:这个CALL:0042FC9F > $ E8 ECCF0000 CALL start.0043CC90 //内存地址是0043CC90进入CALL里面,OD里是用enter回车键进入:0043CC90 /$ 55 PUSH EBP0043CC91 |. 8BEC MOV EBP,ESP0043CC93 |. 83EC 10 SUB ESP,100043CC96 |. A1 10F84500 MOV EAX,DWORD PTR DS:[45F810]0043CC9B |. 8365 F8 00 AND DWORD PTR SS:[EBP-8],00043CC9F |. 8365 FC 00 AND DWORD PTR SS:[EBP-4],00043CCA3 |. 53 PUSH EBX0043CCA4 |. 57 PUSH EDI0043CCA5 |. BF 4EE640BB MOV EDI,BB40E64E0043CCAA |. 3BC7 CMP EAX,EDI0043CCAC |. BB 0000FFFF MOV EBX,FFFF00000043CCB1 |. 74 0D JE SHORT start.0043CCC00043CCB3 |. 85C3 TEST EBX,EAX0043CCB5 |. 74 09 JE SHORT start.0043CCC00043CCB7 |. F7D0 NOT EAX0043CCB9 |. A3 14F84500 MOV DWORD PTR DS:[45F814],EAX0043CCBE |. EB 60 JMP SHORT start.0043CD200043CCC0 |> 56 PUSH ESI0043CCC1 |. 8D45 F8 LEA EAX,DWORD PTR SS:[EBP-8]0043CCC4 |. 50 PUSH EAX ; /pFileTime 0043CCC5 |. FF15 74C14400 CALL DWORD PTR DS:[<&KERNEL32.GetSystemT>; \GetSystemTimeAsFileTime0043CCCB |. 8B75 FC MOV ESI,DWORD PTR SS:[EBP-4]0043CCCE |. 3375 F8 XOR ESI,DWORD PTR SS:[EBP-8]0043CCD1 |. FF15 70C24400 CALL DWORD PTR DS:[<&KERNEL32.GetCurrent>; [GetCurrentProcessId0043CCD7 |. 33F0 XOR ESI,EAX0043CCD9 |. FF15 7CC24400 CALL DWORD PTR DS:[<&KERNEL32.GetCurrent>; [GetCurrentThreadId0043CCDF |. 33F0 XOR ESI,EAX0043CCE1 |. FF15 B4C14400 CALL DWORD PTR DS:[<&KERNEL32.GetTickCou>; [GetTickCount0043CCE7 |. 33F0 XOR ESI,EAX0043CCE9 |. 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]0043CCEC |. 50 PUSH EAX ; /pPerformanceCount0043CCED |. FF15 70C14400 CALL DWORD PTR DS:[<&KERNEL32.QueryPerfo>; \QueryPerformanceCounter0043CCF3 |. 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]0043CCF6 |. 3345 F0 XOR EAX,DWORD PTR SS:[EBP-10]0043CCF9 |. 33F0 XOR ESI,EAX0043CCFB |. 3BF7 CMP ESI,EDI0043CCFD |. 75 07 JNZ SHORT start.0043CD060043CCFF |. BE 4FE640BB MOV ESI,BB40E64F0043CD04 |. EB 0B JMP SHORT start.0043CD110043CD06 |> 85F3 TEST EBX,ESI0043CD08 |. 75 07 JNZ SHORT start.0043CD110043CD0A |. 8BC6 MOV EAX,ESI0043CD0C |. C1E0 10 SHL EAX,100043CD0F |. 0BF0 OR ESI,EAX0043CD11 |> 8935 10F84500 MOV DWORD PTR DS:[45F810],ESI0043CD17 |. F7D6 NOT ESI0043CD19 |. 8935 14F84500 MOV DWORD PTR DS:[45F814],ESI0043CD1F |. 5E POP ESI0043CD20 |> 5F POP EDI0043CD21 |. 5B POP EBX0043CD22 |. C9 LEAVE0043CD23 \. C3 RETN //注意看这个retn返回命令,直接retn返回说明该CALL没参数。
DNF完整找基址方法

本帖最后由玖哲于 2011-3-12 16:00 编辑先进入游戏打开驱动工具上面三张图教你如何成功打开驱动接下来我们打开OD 看见没可以附加DNF了但是呢附加之后会出现下面这种问题如图什么都没有别急我们按下M2会出现下面这幅图好了可以真正附加DNF幷显示代码了接下来就教大家用特征码找基址首先CTRL+G跳转到00400000 如图第一我们找人物基址CTRL+S特征码mov eax,dword ptr ds:[esi] push 0x1Fmov ecx,esi点查找这里的011CF364即为人物基址第二我们找技能参数CTRL+S特征码PUSH EDIPUSH EDIMOV EAX,DWORD PTR DS:[ESI]PUSH ECX这里的01083DF8 和01083DFC即为技能参数后面的2E0没截过来‘2E0是技能偏移第三我们找加密参数CTRL+S特征码push 3Fpush edi这里的01392DA4和013DA0为加密参数第四我们搜索公告基址和商店基址CTRL+S特征码push 0push 0push 1F 这里的01178BC4为商店基址00ADDC20为公告基址第五我们搜索仓库基址CTRL+S特征码push eaxpush 0x2D这里的009BD760为仓库基址push ebxpush -0x1push ebxpush ebxpush ebxpush 0xC 为喇叭公告的字节码。
方法同上召唤基址攻击对象怪物基址怪物数量用到工具小烦搜索器这几个我说下方法就不发图片了时间来不及首先说下攻击对象找法首先读取人物基址得到一个长整数进图让怪打不要打怪然后搜索读取到的长整数就会出来怪物基址了怪物基址找法进图打怪搜索读取到的长整数怪物基址就可以出来了怪物数量找法进图不打怪只数怪比如怪有8只8X4+4=36 你就搜索整数型36一次可能搜索不到接下来打死一只怪7X4+4=32 再次搜索整数型32 依次类推找到为止召唤基址找法首先读取攻击对象得到一个长整数可能读取不到进图打怪把所有的怪打光再读取这下绝对可以接下来召唤出一只等级低点的怪物(为什么呢,后面可以验证一下召唤基址是否找对了)搜索刚才读取到的长整数就可以得到召唤基址了接下来就可以验证了进入下一图让怪把你刚才召唤的怪物打死变为0的那个绝对就是召唤基址了如果有帮到你就加点分吧不强求伸手党从此不再受气了那些自以为是看不起伸手党的我表示强烈的鄙视关于偏移的找法只要大家找到一个四位偏移和一个三位偏移这个游戏无论怎么更新你都可以无忧了鞋子偏移找法用到方向偏移工具这里我就用文字描述了在人物文本框里输入人物基址模糊不等于0搜索穿上鞋子首次扫描直到出现2XXX脱下鞋子精确搜索0 就可以找到鞋子偏移称号偏移首次扫描用模糊不等0搜索再次扫描用变化的值搜索称号取下戴上循环搜索几次就可以得到称号偏移武器偏移也是同样的道理就不多说了三位偏移加个双偏移进去方法一样5916b399972762446e068cc1.jpg(70.61 KB)e5c9b9fb1b30436e4f4aeac1.jpg(43.34 KB)。
OD找基址——精选推荐

OD找基址OD找基址⽅法【转⾃挂海】1.技能参数搜索PUSH EDIPUSH EDIMOV EAX,DWORD PTR DS:[ESI] PUSH ECX技能参数1 010A5E88技能参数2 010A5E8C2.仓库基址和商店基址push 2D⽅法⼆push eax push 0x2D商店基址 011A2804 仓库基址 009C5D10 3.加密参数push 3Fpush edi加密参数1 013BBE4C 加密参数2 013BBE48 4.公告基址和商店基址push 0push 0push 1F公告基址 00AEB900商店基址 011A28045.⼈物基址mov eax,dword ptr ds:[esi] push 0x1Fmov ecx,esi⼈物基址 011F8FC46.动作CALL:按CTRL+S键输⼊特征码→ mov eax,dword ptr ds:[edi] push ebxpush ebxpush ebxpush ebxpush ebxmov ecx,edi动作CALL 2B47.物品CALL:按CTRL+S键输⼊特征码→ mov ecx,dword ptr ds:[edx+edi*4] mov eax,dword ptr ds:[ecx]call dword ptr ds:[eax+18]mov cl,byte ptr ds:[esi+34]物品CALL 4C88.3S评分找法push eax 或者 push eax push 0x8 push -0x1 push 0x6 push ecx评分基址 0119CE909.地图基址找法push eaxpush ecxpush 0x0地图基址 01094D3810.怪物数量找法push eaxpush -0x1push 0x156push 0xA怪物数量 011FB138 11.⾓⾊基址找法pop ediand cl,0xEFpop esi⾓⾊基址 0118A24012.过图CALL找法mov eax,dword ptr ss:[ebp-0x14] mov ecx,dword ptr ss:[ebp-0x24] mov ecx,dword ptr ds:[ecx+0x48] push eax过图CALL 004A1020 ⼈物基址。
汇编 od找基址方法

汇编od找基址方法
你好,这篇文章我尽量用四川方言、陕西方言和北京方言结合的方式来写,紧扣“汇编OD找基址方法”这个主题。
咱们先说说这汇编OD找基址的方法。
说白了啊,这就是个技术活,得靠
咱们这些搞技术的哥们儿来搞。
四川话来说,就是要“摸清楚”这个基址到底在哪儿。
陕西方言里,这就叫“寻摸”个东西出来。
首先啊,你得有个OD(OllyDbg)这样的反汇编工具,这就好比咱们手里
的放大镜,得靠它来看清楚代码的“庐山真面目”。
然后啊,你就得开始“扫描”这个程序的内存空间了,北京话讲就是“翻箱倒柜”地找。
在OD里,你可以设置一些条件来过滤出你感兴趣的部分,这就好比咱们
在菜市场里挑菜,只挑自己喜欢的。
然后啊,你就得开始“分析”这些代码了,看看它们都在干啥,哪些可能是我们要找的基址。
找基址这个过程啊,得有耐心,也得有经验。
有时候你可能得反复试错,才能找到正确的基址。
这就像咱们小时候玩捉迷藏,得反复试探,才能找到藏身的小伙伴。
不过啊,一旦你找到了基址,那就啥都好说了。
你就可以“操控”这个程序了,想让它干啥就干啥。
这就好比咱们掌握了遥控器的密码,想看啥节目就看啥节目。
所以说啊,汇编OD找基址这个方法,虽然听起来复杂,但只要你掌握了
技巧,就不难了。
四川话讲就是“熟能生巧”,陕西方言里叫“练出来的”,北京话就是“多练练就会了”。
好了,今天就跟大家聊到这儿,希望这篇文章能帮到你。
如果你还有其他
问题,随时问我啊!。
第一课程内容

一切从零开始系列教程第一课初识CE本课内容:了解内存的作用,单机游戏的数据搜索与修改。
内容简记: 内存是程序与CPU进行沟通的桥梁内存:存贮数据(临时)。
用工具搜索这里面我们想要的数据存放的地址CPU内存程序现在血是9,如果我们找到了这个值存放的内存的地址,那么我们就可以监视这个地址里边的值的变化。
当这个值变化了,我们就可采取一定的措施。
比如:加血。
搜索内存的专用工具:CE。
1. 确定我们要搜索的进程(程序),附加上。
2. 搜索:这么多结果里面,只有一个才是真正的存放“血”的地址。
其他的呢?3.从众从结果当中,“筛选”出那一个唯一的地址。
怎么筛选?―――改变(黄金法则)。
在“结果”当中搜索―――筛选。
4.必要的时候可以采取“修改”的办法,来判断哪一个才是真正的地址。
第二课易语言写出单机游戏的简单外挂--------初识易语言1.读取内存地址里面的值,就可以知道人物的血,子弹,人个数等等数据.读取内存地址里面的值这是今天的一个知识点.怎么读取呢?A.明确你要读取那个程序(进程)的内存. 进程的标识(唯一的) marioxp.exeB.明确你要读取的是这个程序(进程)的哪一个地址里的值. 内存地址.C.你要读取的是什么类型的数据. (整数型)2.时钟周期事件,就是每隔一个时钟周期的时间,就执行里面的代码.第三课初步认识网络游戏数据存放1.学习用CE找出网络游戏中“血”存放的动态地址。
2.复习用易语言把游戏内存数据读取出来.3.认识动态内存地址和静态内存地址的区别.我们在这里找到的存放的血的地址,它是一个动态的地址?怎么理解呢?就是说,存放血的地址,它是会变化的?什么时候变化?就是当游戏重新打开过,存放的地址就会变化。
第四课CE寻找游戏动态内存地址的来源――血基址的寻找1.再次熟悉CE对数据搜索。
2.了解汇编指令mov表示的作用。
3.能理解[ ]表示的意义。
课程简记:像eax,ebx,ecx,edx…这些,我们把它们叫做寄存器。
OD找基址

OD找基址方法【转自挂海】1.技能参数搜索PUSH EDIPUSH EDIMOV EAX,DWORD PTR DS:[ESI] PUSH ECX技能参数1 010A5E88技能参数2 010A5E8C2.仓库基址和商店基址push 2D方法二push eax push 0x2D商店基址 011A2804 仓库基址 009C5D103.加密参数push 3Fpush edi加密参数1 013BBE4C 加密参数2 013BBE484.公告基址和商店基址push 0push 0push 1F公告基址 00AEB900商店基址 011A28045.人物基址mov eax,dword ptr ds:[esi] push 0x1Fmov ecx,esi人物基址 011F8FC46.动作CALL:按CTRL+S键输入特征码→ mov eax,dword ptr ds:[edi]push ebxpush ebxpush ebxpush ebxpush ebxmov ecx,edi动作CALL 2B47.物品CALL:按CTRL+S键输入特征码→ mov ecx,dword ptr ds:[edx+edi*4]mov eax,dword ptr ds:[ecx]call dword ptr ds:[eax+18]mov cl,byte ptr ds:[esi+34]物品CALL 4C88.3S评分找法push eax 或者 push eax push 0x8 push -0x1 push 0x6 push ecx评分基址 0119CE909.地图基址找法push eaxpush ecxpush 0x0地图基址 01094D3810.怪物数量找法push eaxpush -0x1push 0x156push 0xA怪物数量 011FB13811.角色基址找法pop ediand cl,0xEFpop esi角色基址 0118A24012.过图CALL找法mov eax,dword ptr ss:[ebp-0x14] mov ecx,dword ptr ss:[ebp-0x24] mov ecx,dword ptr ds:[ecx+0x48] push eax过图CALL 004A1020 人物基址。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
OD找基址方法【转自挂海】1.技能参数
搜索
PUSH EDI
PUSH EDI
MOV EAX,DWORD PTR DS:[ESI] PUSH ECX
技能参数1 010A5E88
技能参数2 010A5E8C
2.仓库基址和商店基址
push 2D
方法二push eax push 0x2D
商店基址 011A2804 仓库基址 009C5D10
3.加密参数
push 3F
push edi
加密参数1 013BBE4C 加密参数2 013BBE48
4.公告基址和商店基址push 0
push 0
push 1F
公告基址 00AEB900
商店基址 011A2804
5.人物基址
mov eax,dword ptr ds:[esi] push 0x1F
mov ecx,esi
人物基址 011F8FC4
6.动作CALL:按CTRL+S键输入特征码→ mov eax,dword ptr ds:[edi]
push ebx
push ebx
push ebx
push ebx
push ebx
mov ecx,edi
动作CALL 2B4
7.物品CALL:按CTRL+S键输入特征码→ mov ecx,dword ptr ds:[edx+edi*4]
mov eax,dword ptr ds:[ecx]
call dword ptr ds:[eax+18]
mov cl,byte ptr ds:[esi+34]
物品CALL 4C8
8.3S评分找法
push eax 或者 push eax push 0x8 push -0x1 push 0x6 push ecx
评分基址 0119CE90
9.地图基址找法push eax
push ecx
push 0x0
地图基址 01094D38
10.怪物数量找法push eax
push -0x1
push 0x156
push 0xA
怪物数量 011FB138
11.角色基址找法
pop edi
and cl,0xEF
pop esi
角色基址 0118A240
12.过图CALL找法
mov eax,dword ptr ss:[ebp-0x14] mov ecx,dword ptr ss:[ebp-0x24] mov ecx,dword ptr ds:[ecx+0x48] push eax
过图CALL 004A1020 人物基址。