逆向笔记

 

 

搜周围单位数,会跟到
dd [[[0x633DFC]]+0xc3c00]+8 这里是数量
那么猜测
dd [[[0x633DFC]]+0xc3c00] 是对象

通过查阅发现 [[[[[0x633DFC]]+0xc3c00]+4]+i*4] 就是一个单位 i是数量

 

 


0x634ed8 貌似是背包的开始地址
下面是没确定的
eax 物品ID 随机传送石eax=0xBA D9 f8 每个背包格子是 1f 的结构 这里是背包
[634ed8]+(1f*i*4) i从0开始

[0x634ed8] 物品 首地址 这个物品是快捷键1 开始 工6个


005A8560 A1 D84E6300 mov eax,dword ptr ds:[0x634ED8] ; 关键点
005A8565 803CB8 00 cmp byte ptr ds:[eax+edi*4],0x0 这里是物品名称

-----------------------
005BB984 66:817C82 19 10>cmp word ptr ds:[edx+eax*4+0x19],0x2710 ; 这里是id +0x19
0076C33D 67 08 00 00 g.. 这个是回收包宝箱
0076C3B9 FB 00 00 00 ?..? 这个是毒药
0076C435 01 04 00 00 .. 随机传送石
0076C4B1 84 08 00 00 ?..` 武器新手的那把
0076C52D F2 03 00 00 ?..? 盟重传送石

 

 

-----------------------
便利地面物品 地面物品数量下手

0056503F A1 B04D6300 mov eax,dword ptr ds:[0x634DB0]
00565044 8B00 mov eax,dword ptr ds:[eax]
00565046 8B58 08 mov ebx,dword ptr ds:[eax+0x8]

[[634db0]]+8 是地面物品数量

[[634db0]]猜测是地面对象

[[[634db0]]+4] 进去看 猜测这里就是地面列表的首地址了

[[[[634db0]]+4]] +0坐标x +4坐标y +c是物品id +11是名字 // 检查+0是否等于0 就不用继续便利了。

------------------------------------------------------------------

call bp send, 堆栈向上, 功能call 一般集中在一起, 所以和 发包 组包 call 地址跳转比较远,   一直向上跟发现 地址跳跃比较大,那说明功能call就就在上面几层就是了。通过nop 就可以测试出
物品使用call
00608FCD E8 063C0000 call KTFXDEEG.0060CBD8 ; 入口
-------------------------------------------------
走路

面向
7     0上       1                        ecx是x 坐标
6左              2右
5     4下       3

006066BD E8 FE600000 call KTFXDEEG.0060C7C0 ; 跑路2

push 栈
0012FEAC 00000007 ... 面向
0012FEB0 00000008 ... y坐标
-------------------------------------------------
喊话call
[EDX] 是内容
0056294A E8 1D9A0A00 call KTFXDEEG.0060C36C ; 喊话1

 

posted @ 2015-04-26 23:17  Red Cat  阅读(276)  评论(0编辑  收藏  举报

Copyright © 2022 LyShark Powered by .NET 6 on Kubernetes
Theme - LyTheme 1.0