25.第二阶段x64游戏实战-分析物品相关数据

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!

本次游戏没法给

内容参考于:微尘网络安全

上一个内容:24.第二阶段x64游戏实战-分析背包结构

最新背包基址偏移0x9497E0,0x00007FF7CBC10000+0x9497E0

反汇编地址 00007FF7CBF686E4,偏移0x3586E4

物品的属性,比如说物品的名字,如下图直接使用CE搜索物品的名字

找出来7个

然后把它们都添加到列表

双击下图红框位置,一个一个的修改

修改完之后,再去游戏中看物品的名字,就会发现变成下图中其中的一个了,这里跌打药膏6是物品的名字

复制 17645257FDC 这个地址,然后打开x64dbg开始找基址,如下图在内存窗口中跳转到17645257FDC 这个地址之后选择硬件访问断点

下图是通过鼠标放到物品上,然后游戏会弹出物品说明窗口触发的断点

为了避免影响这里记得删除硬件访问断点

开始分析代码,如下图红框rdi是物品对象,然后调用了它的虚函数(call qword ptr ds:[rax+0x20])就得到了名字,所以要进入这个虚函数看一看

如下图得到了公式 [物品对象+0x40]+0x20是名字

通过上一个内存中找到的背包基址,从背包基址中随便找一个物品进行验证公式,0x0000017668BE4670+0x40]+0x20,0x0000017668BE4670是背包中物品地址,通过验证是正确的,然后下图红框的都是字符串的地址

字符串通过与游戏中显示的文字做对比得到了,一些偏移

物品对象+0x40\]+0x20 名字 \[物品对象+0x40\]+0x60 类型名字 \[物品对象+0x40\]+0x30 等级

这里药物的偏移和装备的偏移不一样,上面找到的名字、类型名字、等级都是药物物品的,不一样怎么办?通过上方分析名字知道它是通过虚函数得到的,所以装备或其它物品肯定也都会这样,下图红框是背包中装备的内存地址

然后进入虚函数表

如下图把偏移0x20位置的地址进行转到反汇编

可以看到装备的名字是0x28

验证,下图进入0x40

然后0x28

然后进入上图红框的地址(0x176476E3758)就可以看到装备名了

类型名字的虚函数偏移,对类型名字设置硬件访问断点,如下图类型名字的虚函数是0x28

要注意等级是32位的,如下图用32位展示数据,就可以看到等级了,它的虚函数也是对它设置硬件访问断点

如下图等级虚函数的偏移是0x118


相关推荐
浩浩测试一下9 小时前
汇编中的段与段寄存器(大小)段序 (逆向分析)
汇编·逆向·二进制·字节序·windows编程·内存地址排序
资源分享助手11 小时前
我!勇者?The Warrior免安装中文版下载与玩法体验
游戏
云起SAAS13 小时前
抖音小游戏源码 - 消消乐 | 含激励广告+成就系统 | 开箱即用商业级消除游戏模板
android·游戏·广告联盟·看激励广告联盟流量主·抖音小游戏源码 - 消消乐
津津有味道14 小时前
一键写入启动游戏NDEF复合记录NFC标签vb6源码
游戏·标签·nfc·ndef·复合记录
游乐码14 小时前
Unity基础(四)向量相关
游戏·unity·游戏引擎
阿阳微客16 小时前
网易Buff游戏搬砖,长期可做!
笔记·学习·游戏
Kurisu57516 小时前
探灵直播2026最新官方正版免费下载 一键转存 永久更新 (看到速转存 资源随时走丢)
游戏·游戏引擎·游戏程序·动画·关卡设计
STDD17 小时前
Abiotic Factor多人生存建筑游戏《非生物因素》 专用服务器搭建教程
服务器·数据库·游戏
开开心心就好18 小时前
带OCR识别的电子发票打印工具
运维·javascript·科技·游戏·青少年编程·ocr·powerpoint
经济元宇宙21 小时前
HOPE星火燎原不是希望工程,也不是游戏项目:项目名称与定位澄清
游戏