28.第二阶段x86游戏实战2-遍历周围-通过附近NPC怪物血量的方式(初识vm代码)

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

本次游戏没法给

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

本人写的内容纯属胡编乱造,全都是合成造假,仅仅只是为了娱乐,请不要盲目相信。

工具下载:

链接:https://pan.baidu.com/s/1rEEJnt85npn7N38Ai0_F2Q?pwd=6tw3

提取码:6tw3

复制这段内容后打开百度网盘手机App,操作更方便哦

上一个内容:27.第二阶段x86游戏实战2-遍历周围NPC跳出递归循环

上一个内容中通过使用附近NPC的名字去附近NPC列表失败了,找到一个递归循环中,路线就断了,本次再使用其它方式进行查找附近NPC列表

这次通过附近怪物血量追,首先打开游戏打开CE,并使用CE附加到游戏

首先找一个旗鼓相当的怪物,别一下把怪物打死了,或别被怪物打死了,然后打怪物的时候它是有一个百分比的,有百分比的数据一般都是小数,所以使用CE搜索浮点数类型的初始值,如下图

首次扫描完会有很多,如下图

然后来到游戏打一下怪物,让血量变少,然后使用减少的数值再次扫描

再次扫描完结果就会变少了

然后不要打怪物,使用未变动的数值再次扫描

然后结果又会变少,现在就重复上面的步骤打怪物用减少,不打怪物用未变动的数值,操作上几次

最终有三个特别像百分比,如下图红框,怪物血量也差不多还剩百分之20左右

然后修改它们的值,如果修改对了,怪物血量会有变化,如下图修改成1,怪物就会满血,1就是百分之百的血量

然后现在找到一个内存地址了,然后打开OD开始使用硬件写入断点去找,如下图下硬件写入断点

下完硬件写入断点之后,回到游戏打一下怪物,让它触发断点,然后就回来的下图红框位置,记得把硬件写入断点删除

然后有时候硬件断点会在多个位置断下来,所以需要多次硬件断点看看在什么位置断下来的几率大,哪个断下来的几率打就先用哪个,下图硬件断点多次进入,上图硬件断点就进入了一次,所以就用下图中的代码

开始分析代码,xmm0是一个寄存器xmm开头的寄存器专门用来存放小数的,如下图红框,血量的位置是eax+0x8位置,然后eax来自于esi+0x10,然后esi的值来自于ecx,所以要往上找一层

然后在下图红框位置打断点(有时候硬件断点和普通断点CTRL+F9的位置会不一样,这里先尝试普通断点,如果普通断点追着费劲再尝试打硬件写入断点)

CTRL+F9之后,回来到下图位置,可以发现下图红框的代码我们没法读,这说明来到了一个关键的地方,游戏开发者把这块代码进行了vm、代码混淆,本次到这也失败了,下一次再继续


相关推荐
开开心心就好3 小时前
仅168KB的桌面图标自动隐藏工具
windows·计算机视觉·计算机外设·excel·启发式算法·宽度优先·csdn开发云
怪兽软家6 小时前
DaVinci Resolve/达芬奇 20安装教程及下载
windows·经验分享·生活
chao1898446 小时前
完整MES系统实现 (C# 客户端服务器)
服务器·windows·c#
Hello_Embed7 小时前
Windows 安装 Claude Code 并接入 模型
windows·笔记·ai编程
Muyuan19988 小时前
28.Paper RAG Agent 开发记录:修复 LLM Rerank 的解析、Fallback 与可验证性
linux·人工智能·windows·python·django·fastapi
AxureMost9 小时前
4DDiG DLL Fixe 1.0.8.2 系统DLL修复工具
windows
怣疯knight11 小时前
Windows不安装 Android Studio如何打包安卓软件
android·windows·android studio
空中海12 小时前
02. 静态逆向、Manifest 分析与 Smali 重打包
服务器·网络·windows
一拳一个娘娘腔12 小时前
告别图形化界面:基于CLI的Windows系统入侵排查与防御实战手册
windows·安全
疋瓞13 小时前
批处理_基础补充、文件和文件夹处理_02
windows