目标:

1、分析动作数组
2、分析攻击与打坐

思路:
   通过选中对象逆向回溯出动作数组
   通过动作对象访问逆向回溯到攻击CALL附近
   封包断点bp WSASend

225F5050
225F5298
225F54E0

//背包对象 怪物对象  动作对象 玩家对象
0061BD29  |.  BE 40E71C03   MOV ESI,Client.031CE740

//动作对象数组 
dd [31A9A98]+410+4*0

0079D2CF - 80 B8 30020000 00 - cmp byte ptr [eax+00000230],00
0079D2D6 - 75 6D - jne Client.exe+39D345
0079D2D8 - 8B 8C 9F 10040000  - mov ecx,[edi+ebx*4+00000410] << 从这里 F8单步步过跟
0079D2DF - 85 C9  - test ecx,ecx
0079D2E1 - 74 62 - je Client.exe+39D345

0079DB98 - 83 BF 08160000 35 - cmp dword ptr [edi+00001608],35
0079DB9F - 75 1F - jne Client.exe+39DBC0
0079DBA1 - 8B 84 9F 10040000  - mov eax,[edi+ebx*4+00000410] <<
0079DBA8 - 85 C0  - test eax,eax
0079DBAA - 74 14 - je Client.exe+39DBC0

0079DB2E  |. /E9 D9000000   JMP Client.0079DC0C
0079DB33  |> |83F8 FF       CMP EAX,-1
0079DB36  |. |0F84 D0000000 JE Client.0079DC0C
0079DB3C  |. |50            PUSH EAX
0079DB3D  |. |6A 01         PUSH 1
0079DB3F  |. |6A 00         PUSH 0
0079DB41  |. |8BCF          MOV ECX,EDI
0079DB43  |. |E8 B80FFFFF   CALL Client.0078EB00
0079DB48  |. |E9 BF000000   JMP Client.0079DC0C
0079DB4D  |> |8B8F 08160000 MOV ECX,DWORD PTR DS:[EDI+1608]
0079DB53  |. |8B97 D01B0000 MOV EDX,DWORD PTR DS:[EDI+1BD0]
0079DB59  |. |53            PUSH EBX
0079DB5A  |. |51            PUSH ECX
0079DB5B  |. |52            PUSH EDX
0079DB5C  |. |8BCF          MOV ECX,EDI
0079DB5E  |. |E8 9D0FFFFF   CALL Client.0078EB00
0079DB63  |. |E9 A4000000   JMP Client.0079DC0C
0079DB68  |> |E8 A3B2F2FF   CALL Client.006C8E10
0079DB6D  |. |84C0          TEST AL,AL
0079DB6F  |. |0F85 97000000 JNZ Client.0079DC0C
0079DB75  |. |803D 318B1A03>CMP BYTE PTR DS:[31A8B31],1
0079DB7C  |. |0F84 8A000000 JE Client.0079DC0C
0079DB82  |. |8B87 08160000 MOV EAX,DWORD PTR DS:[EDI+1608]
0079DB88  |. |8B8F D01B0000 MOV ECX,DWORD PTR DS:[EDI+1BD0]

0079DB8E  |. |53            PUSH EBX                                 ;  对象在数组里的下标
0079DB8F  |. |50            PUSH EAX                                 ;  35
0079DB90  |. |51            PUSH ECX                                 ;  5
0079DB91  |. |8BCF          MOV ECX,EDI
0079DB93  |. |E8 1878FFFF   CALL Client.007953B0                     ;  ecx=[31A9A98]
0079DB98  |. |83BF 08160000>CMP DWORD PTR DS:[EDI+1608],35
0079DB9F  |. |75 1F         JNZ SHORT Client.0079DBC0
0079DBA1  |. |8B849F 100400>MOV EAX,DWORD PTR DS:[EDI+EBX*4+410]     ;  ebx动作下标
0079DBA8  |. |85C0          TEST EAX,EAX
0079DBAA  |. |74 14         JE SHORT Client.0079DBC0
0079DBAC  |. |8B50 4C       MOV EDX,DWORD PTR DS:[EAX+4C]
0079DBAF  |. |A1 E018F400   MOV EAX,DWORD PTR DS:[F418E0]
0079DBB4  |. |8B88 7C020000 MOV ECX,DWORD PTR DS:[EAX+27C]
0079DBBA  |. |52            PUSH EDX
0079DBBB  |. |E8 F0BAEDFF   CALL Client.006796B0                     ;  动作使用CALL
0079DBC0  |> |83BF 08160000>CMP DWORD PTR DS:[EDI+1608],36
0079DBC7  |. |75 20         JNZ SHORT Client.0079DBE9
0079DBC9  |. |8B849F 100400>MOV EAX,DWORD PTR DS:[EDI+EBX*4+410]
0079DBD0  |. |85C0          TEST EAX,EAX
0079DBD2  |. |74 15         JE SHORT Client.0079DBE9
0079DBD4  |. |8B48 4C       MOV ECX,DWORD PTR DS:[EAX+4C]
0079DBD7  |. |8B15 E018F400 MOV EDX,DWORD PTR DS:[F418E0]

mov ebx,2
mov edi,31A9A98
mov edi,[edi]
mov eax,[edi+410+4*ebx]
mov edx,[eax+4c]
mov eax,[0xf418E0]
MOV ECX,DWORD PTR DS:[EAX+27C]
push edx
call 006796b0

#define  Base_ActionList 0x31C1EB0
+5C 名字

8B91380200002B9134020000B8ABAAAA2AF7EAD1FA8BC253c1E81F33db03c274 //第一个 能搜到 共2个
+0x31  //00677AD1-00677AA0

dc [[0x31C1EB0]+410]+5c

00677A9F    CC                          INT3

00677AA0    8B91 38020000               MOV EDX,DWORD PTR DS:[ECX+0x238]
00677AA6    2B91 34020000               SUB EDX,DWORD PTR DS:[ECX+0x234]
00677AAC    B8 ABAAAA2A                 MOV EAX,0x2AAAAAAB
00677AB1    F7EA                        IMUL EDX
00677AB3    D1FA                        SAR EDX,1
00677AB5    8BC2                        MOV EAX,EDX
00677AB7    53                          PUSH EBX
00677AB8    C1E8 1F                     SHR EAX,0x1F
00677ABB    33DB                        XOR EBX,EBX
00677ABD    03C2                        ADD EAX,EDX
00677ABF    74 7C                       JE SHORT Client.00677B3D
00677AC1    56                          PUSH ESI
00677AC2    57                          PUSH EDI
00677AC3    BE 10040000                 MOV ESI,0x410
00677AC8    EB 06                       JMP SHORT Client.00677AD0
00677ACA    8D9B 00000000               LEA EBX,DWORD PTR DS:[EBX]
00677AD0    A1 B01E1C03                 MOV EAX,DWORD PTR DS:[0x31C1EB0] //基址
00677AD5    833C06 00                   CMP DWORD PTR DS:[ESI+EAX],0x0

00677AA0    8B91 38020000   MOV EDX,DWORD PTR DS:[ECX+0x238]
00677AA6    2B91 34020000   SUB EDX,DWORD PTR DS:[ECX+0x234]
00677AAC    B8 ABAAAA2A     MOV EAX,0x2AAAAAAB
00677AB1    F7EA            IMUL EDX
00677AB3    D1FA            SAR EDX,1
00677AB5    8BC2            MOV EAX,EDX
00677AB7    53              PUSH EBX
00677AB8    C1E8 1F         SHR EAX,0x1F
00677ABB    33DB            XOR EBX,EBX
00677ABD    03C2            ADD EAX,EDX
00677ABF    74 7C           JE SHORT Client.00677B3D
00677AC1    56              PUSH ESI
00677AC2    57              PUSH EDI
00677AC3    BE 10040000     MOV ESI,0x410
00677AC8    EB 06           JMP SHORT Client.00677AD0
00677ACA    8D9B 00000000   LEA EBX,DWORD PTR DS:[EBX]
00677AD0    A1 B01E1C03     MOV EAX,DWORD PTR DS:[0x31C1EB0]               ; 动作基址
00677AD5    833C06 00       CMP DWORD PTR DS:[ESI+EAX],0x0
00677AD9    74 3C           JE SHORT Client.00677B17
00677ADB    8B0406          MOV EAX,DWORD PTR DS:[ESI+EAX]
00677ADE    8B50 4C         MOV EDX,DWORD PTR DS:[EAX+0x4C]
00677AE1    8B78 50         MOV EDI,DWORD PTR DS:[EAX+0x50]

007AAAAF   /0F85 97000000   JNZ Client.007AAB4C
007AAAB5   |803D 490F1C03 0>CMP BYTE PTR DS:[0x31C0F49],0x1
007AAABC   |0F84 8A000000   JE Client.007AAB4C
007AAAC2   |8B87 08160000   MOV EAX,DWORD PTR DS:[EDI+0x1608]
007AAAC8   |8B8F D01B0000   MOV ECX,DWORD PTR DS:[EDI+0x1BD0]
007AAACE   |53              PUSH EBX                                       ; 下标
007AAACF   |50              PUSH EAX                                       ; 1
007AAAD0   |51              PUSH ECX                                       ; 0
007AAAD1   |8BCF            MOV ECX,EDI
007AAAD3   |E8 08EAFEFF     CALL Client.007994E0                           ; 背包物品使用CALL //动作使用CALL
007AAAD8   |83BF 08160000 3>CMP DWORD PTR DS:[EDI+0x1608],0x35
007AAADF   |75 1F           JNZ SHORT Client.007AAB00
007AAAE1   |8B849F 10040000 MOV EAX,DWORD PTR DS:[EDI+EBX*4+0x410]

外挂辅助技术研究-分析动作数组与攻击捡物功能相关推荐

  1. 外挂辅助技术研究-分析选怪功能

    目标: 1.分析选怪功能 选怪变量=数据 //怪物对象ID //怪物对象地址 0049F902 - 89 45 F0  - mov [ebp-10],eax 0049F905 - 53 - push ...

  2. 外挂辅助技术研究-分析怪物列表

    目标: 1.分析怪物列表 2.分析怪物对象属性 分析思路:   从怪物明显的属性入手,名字,血量 30235690+5BC //怪物EAX=30235698 30235698+5B4 //怪物血量 d ...

  3. 外挂辅助技术研究教程

    001-分析角色HP,MP值基址.txt 002-分析角色金钱基址.txt 003-分析角色气功加点基址.txt 004-编写代码读取游戏数据-注入DLL.txt 005-编写Win32控制台程序 注 ...

  4. 外挂辅助技术原理分析

    我认为网络游戏防外挂应该是从服务器代码上来控制的,要是代码写得好,BUG会很难       被玩家发现.我不赞成用外挂,但做网络游戏不能不研究.             根据我的理解说一下某些外挂的原 ...

  5. 外挂辅助技术研究-完善选怪功能

    1.分析选中怪物,NPC,玩家功能 1.取消之前选中对象 [[31CE73C]+14b8]==ID 2.选中当前对象 dd [031CE740+4*0] //对象列表 玩家 背包 动作 人物对象 [3 ...

  6. 外挂技术研究-封装动作数组功能

    目标: 1.封装动作对象 2.封装动作对象列表 3.封装使用对象功能函数 作业: BOOL TActionList::UseAction(char* szpActionName) //背包对象 怪物对 ...

  7. 外挂辅助技术研究-打开指定NPC对话

    1.打开指定NPC对话功能 DWORD GetNpcObjForName(char* szpNpcName); DWORD OpenNpcTalkForName(char* szpNpcName); ...

  8. 蛋白质多重分析技术研究分析报告-

    辰宇信息咨询市场调研公司最近发布-<2022-2028中国蛋白质多重分析技术市场现状研究分析与发展前景预测报告> 内容摘要 本文研究中国市场蛋白质多重分析技术现状及未来发展趋势,侧重分析在 ...

  9. 外挂辅助技术-统计背包HP药品数量代码编写

    郁金香老师这一课讲的是编写函数统计背包HP药品数量 DWORD GetAllHpGoodsNum();作业:DWORD GetAllMpGoodsNum();为自动补给 HP药品作准备DWORD Ge ...

最新文章

  1. python什么时候要缩进_不归路系列:Python入门之旅-一定要注意缩进!!!(推荐)...
  2. deepfm代码参考
  3. JQuery对checkbox的操作
  4. java捕获定时器抛出的异常_详细了解Java中定时器Timer的使用及缺陷分析
  5. 盲人可以也做软件工程师,反思一下老哥
  6. Windows 常用快捷键 + word常用快捷键 +常用工具调用
  7. (转)mysql 无法设置外键的原因总结
  8. ssms 缺少索引信息_搜索引擎整合营销
  9. Python Tricks(三)—— 计算误分率
  10. 【优化求解】基于matalb改进的遗传算法求解IGA城市交通信号优化问题【含Matlab源码 215期】
  11. C语言自动刷视频源码,使用C语言快速制作一个视频播放器,使用这个开源库就可以了...
  12. 安全标准ISO 17799/27001
  13. 一文讲透小石头Little Stone:Web3时代Gravatar、中国版BAYC、平台NFT、社区门票
  14. Docker自定义镜像上传阿里云
  15. 使用putty连接并上传和下载文件到linux服务器
  16. CAD—dwg格式解析库:libdxfrw和libredwg
  17. matlab同轴电缆能量密度,冯慈璋马西奎工程电磁场导论课后重点习题目解答.doc...
  18. kafka中Topic、Partition、Groups、Brokers概念辨析
  19. 微信域名防封检测方法
  20. Pytorch 02 绘制acc loss 曲线

热门文章

  1. CSS | 探究网站变灰色的那些知识盲区的知识碎片
  2. 二叉树三种遍历方式,先序、中序、后序
  3. 点云分割和点云分类(点云语义分割)
  4. Win10家庭版笔记本电脑开热点时显示“我们无法设置移动热点”
  5. 浅析阿里云网络-SLB负载均衡
  6. 如何从零开始开发一个小程序
  7. 常量的两种定义方式比较
  8. 【汇正财经】什么是黑云压城(股票)?
  9. 【原创总结】Tomcat进程为什么起不来?
  10. 威布尔分布用于其他场景时的具体参数估计