7.第二阶段x64游戏实战-分析人物属性

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

本次游戏没法给

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

上一个内容:6.第二阶段x64游戏实战-分析人物状态

首先打开人物面板,查看人物的血量,然后如下图CE中数值类型选择4字节,扫描类型选择精确数值,一般游戏血量是4字节,如果4字节搜不到就使用8字节,扫描类型不变

然后首次扫描完后修改一下血量(比如脱掉加血量的装备或让怪物打几下降低血量或使用物品加血),如下图修改完血量再次扫描之后,就只剩下一个了

然后如下图修改它的值,然后关闭游戏中的人物属性面板,然后再重新打开,有些游戏人物面板的数据不是实时读取人物数据的,需要把人物面板关了重新打开,重新打开之后人物面板中的血量如果变成了下图中的值就说明下图中0x22F8B664A78这个内存地址就是人物血量的地址

然后之前找坐标的时候是有一件事,就是当时使用x坐标的数据进行的查找,找到x坐标之后,如下图使用浏览相关内存区域可以看到x坐标、z坐标、y坐标这三个数据,这说明同样的数据会放到一起,所以找到了血量就找到了,人物属性中其它的数据

如下图使用血量的地址浏览相关内存区域,下图红框中都是人物的属性,有最大生命值、蓝量、最大蓝量、攻击力、防御力等,这些数字都能在游戏中的人物面板中看得到

然后找到地址之后找它的基地址,然后就来到x64dbg,首先打开x64dbg,打开之后如下图点击附加

然后如下图红框通过标题和路径,去找受害者程序

附加受害者程序之后,鼠标左键单机下图红框位置,下图红框位置是内存窗口

然后按CTRL+G,会弹出下图红框的弹框,然后输入血量的地址,然后点确定

如下图红框,内存窗口就会跳转到血量的地址

然后使用硬件访问断点,找它的基址,如下图设置硬件访问断点

设置硬件访问断点之后会发现没反应,这时候关闭人物属性面板,重新打开,会发现硬件访问断点触发,触发之后来到下图位置

然后删除硬件访问断点,首先点击下图红框位置

然后鼠标右击要删除的硬件断点,删除后可以防止因为它乱断导致我们找错位置

然后点击下图红框位置

然后在下图红框位置的代码访问了血量,rax+0x2978访问了血量

然后rax的值来自于下图红框位置,来自于[rbx+0x18],现在的公式[rbx+0x18]+0x2978

rbx的值来自于rcx,现在的公式[rcx+0x18]+0x2978

然后在断点状态下,使用在内存窗口按CTRL+G输入公式跳转验证一下,如果跳转的位置还是血量的地址就说明公式正确,如果不是血量的地址就说明某个地方写错需要重新观察,这里的公式是正确的

然后再找rcx的值哪来的,rcx的值是来自于上一层,然后鼠标左键双击下图红框位置

打上断点

然后关闭人物属性面板重新打开,让断点触发,如下图触发之后鼠标左键双击下图红框位置,取消断点

取消断点之后按CTRL+G再按F8来到下图红框位置,可以看到rcx的值来自于rsi,所以现在的公式[rsi+0x18]+0x2978,记得验证一下公式是否正确

然后再找rsi的值,然后往上翻看到rsi的值来自于[rsi+0x1B0],现在的公式[[rsi+0x1B0]+0x18]+0x2978

然后再继续找rsi的值哪来的,如下图红框rsi的值来自于[rax+0x98],现在的公式[[[rax+0x98]+0x1B0]+0x18]+0x2978

然后再找rax的值哪来的,如下图红框,rax的值来自于基址0x00007FF6A2AACD70,现在的公式[[[[0x00007FF6A2AACD70]+0x98]+0x1B0]+0x18]+0x2978

模块的地址

然后计算偏移Game.exe+0x93CD70

最终的公式:[[[[Game.exe+0x93CD70]+0x98]+0x1B0]+0x18]+0x2978

上一个内容中找到的公式是:

[[Game.exe+0x93CD70]+0x98]+0x1B8,可以发现人物属性的基址个上一个内容中人物状态的基址是同一个,只是所在层级不一样

[[Game.exe+0x93CD70]+0x98]+5C是x坐标

[[Game.exe+0x93CD70]+0x98]+60是z坐标

[[Game.exe+0x93CD70]+0x98]+64是y坐标

[[Game.exe+0x93CD70]+0x98]+1B8是人物状态

其它数据的偏移:

一个数据是4字节,也就是说[[[[Game.exe+0x93CD70]+0x98]+0x1B0]+0x18]+0x2978到[[[[Game.exe+0x93CD70]+0x98]+0x1B0]+0x18]+0x2978+0x4之间是血量的数据

然后

[[[[Game.exe+0x93CD70]+0x98]+0x1B0]+0x18]+0x2978+0x5

[[[[Game.exe+0x93CD70]+0x98]+0x1B0]+0x18]+0x2978+0x9位置又是一个属性的数据,其它属性以此类推

如果血量的数据是4字节其它的数据一般也都会是4字节,现在只需要知道这些剩下的慢慢看后面都会写


img

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/76101.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数组的常见算法一

注: 本文来自尚硅谷-宋红康仅用来学习备份 6.1 数值型数组特征值统计 这里的特征值涉及到:平均值、最大值、最小值、总和等 **举例1:**数组统计:求总和、均值 public class TestArrayElementSum {public static void main(String[] args)…

汽车电子笔记之:基于Tasking编译器怎么制作库文件并将库文件集成进工程释放

目录 1、概述 2、库工程创建、使用步骤 2.1、选择对应的MCU型号及空工程 2.2、选择需要封装的代码 2.3、将需要封装的代码复制到库工程 2.4、整理库工程工程属性 2.5、预留不生成库的.c源文件 2.6、编译生成.a文件 2.7、将.a集成进工程 2.7.1、创建释放给客户的工程 …

[ctfshow web入门] web29

前置知识 eval: 把字符串按照 PHP 代码来执行,例如eval(“echo 1;”);这个函数拥有回显 system:使php程序执行系统命令,例如,system(“ls”);就是查看当前目录,这个拥有回显 preg_match:查找字符串是否匹配…

7-8 超速判断

模拟交通警察的雷达测速仪。输入汽车速度,如果速度超出60 mph,则显示“Speeding”,否则显示“OK”。 输入格式: 输入在一行中给出1个不超过500的非负整数,即雷达测到的车速。 输出格式: 在一行中输出测…

【GESP】C++二级练习 luogu-B3721 [语言月赛202303] Stone Gambling S

GESP二级练习,多层循环分支练习,难度★✮☆☆☆。 题目题解详见:https://www.coderli.com/gesp-2-luogu-b3721/ 【GESP】C二级练习 luogu-B3721 [语言月赛202303] Stone Gambling S | OneCoderGESP二级练习,多层循环分支练习&am…

深入理解C++面向对象特性之一 多态

欢迎来到干货小仓库,堪比沙漠!!! 从“Hello World”到改变世界,中间隔着千万次再试一次. 1.多态的概念 多态的概念:通俗来说,就是多种形态, 具体点就是去完成某个行为,当不同的对象去完成时会 产生出不同的…

蓝桥备赛指南(14):树的直径与重心

树的直径 什么是树的直径?树的直径是树上最长的一条链,当然这条链并不唯一,所以一棵树可能有多条直径。直径由两个顶点u、v来决定,若由一条直径(u,v),则满足一下性质: 1)u、v的度数…

AIDD-人工智能药物设计-网络药理学-多组学与网络药理学分析揭示龟龄集治疗少精症的机制

IF6.7|多组学与网络药理学分析揭示龟龄集治疗少精症的机制 2024年10月28日,海军军医大学张卫东教授团队在Phytomedicine(IF6.7)上发表了题为“Multi-omics and network pharmacology approaches reveal Gui-Ling-Ji alleviates oligoastheno…

搜狗拼音输入法纯净优化版:去广告,更流畅输入体验15.2.0.1758

前言 搜狗输入法电脑版无疑是装机必备的神器。它打字精准,词库丰富全面,功能强大,极大地提升了输入效率。最新版的搜狗拼音输入法更是借助AI技术,让打字变得既准确又高效。而搜狗输入法的去广告精简优化版,通过移除广…

Franka双臂机器人:多领域革新与核心技术深度解析

双臂Franka机器人以类人化操作能力、毫秒级力控响应及智能协同算法为核心,持续推动工业自动化、医疗辅助与农业生产的革新进程。本文深度解析其技术突破与跨行业实践案例。 Franka双臂优势: 高灵活度:7自由度设计,模拟人类手臂运…

Django视图详解

前言 欢迎来到我的博客 个人主页:北岭敲键盘的荒漠猫-CSDN博客 一、Django视图是什么? 视图(View) 是Django处理HTTP请求的核心组件。它接收一个HttpRequest对象,处理业务逻辑,并返回一个HttpResponse对象&#xff08…

【工具变量】上市公安企业社会信任数据集(2004-2023年)

企业社会信任是衡量企业与社会之间信任度的重要指标,反映了企业在公众眼中的信誉和可靠性。社会信任对企业的持续发展和品牌形象有着至关重要的影响。本分享数据参考张维迎(2002年)的做法,采用中国企业家调查系统的地区信任调查数…

Python爬取数据(二)

一.example2包下的 1.re模块的compile函数使用 import repatternre.compile(r\d) print(pattern) 2.match的方法使用 import re patternre.compile(r\d) # m1pattern.match(one123twothree345four) #参数2:指定起始位置(包含),参数3:终止位置(包含),…

spring之Bean的循环依赖问题、反射机制手写Spring框架、Spring IoC注解式开发

一、Bean的循环依赖问题 1.什么是Bean的循环依赖 A对象中有B属性。B对象中有A属性。这就是循环依赖。我依赖你,你也依赖我。 比如:丈夫类Husband,妻子类Wife。Husband中有Wife的引用。Wife中有Husband的引用。 public class Husband {priv…

状态机的基本使用

状态机 1. 什么是状态机 1.1 场景 在业务代码中对一些业务状态进行硬编码,如果有一天更改了业务逻辑就需要更改代码,不方便进行系统扩展和维护。 if (status 状态1) {// TODO } else if(status 状态2) {// TODO } ...另外对订单状态的管理是散落在…

22 | 如何继续提升 Go 开发技术?

提示: 所有体系课见专栏:Go 项目开发极速入门实战课;欢迎加入 云原生 AI 实战营 星球,12 高质量体系课、20 高质量实战项目助你在 AI 时代建立技术竞争力(聚焦于 Go、云原生、AI Infra)。 「Go 项目开发极速…

LLM Agents项目推荐:MetaGPT、AutoGen、AgentVerse详解

这一部分我们将深入介绍三大备受关注的LLM Agents项目:MetaGPT、AutoGen和AgentVerse,包括它们的背景、设计思路、主要功能、技术亮点以及典型应用场景。 1. MetaGPT:让AI像软件工程团队一样协作 项目背景 MetaGPT由Huang et al.于2023年提…

好数(蓝桥杯2024省赛B组)

题目描述 一个整数如果按从低位到高位的顺序,奇数位(个位、百位、万位……)上的数字是奇数,偶数位(十位、千位、十万位……)上的数字是偶数,我们就称之为“好数”。 给定一个正整数 N&#xf…

STM32单片机入门学习——第26节: [9-2] USART串口外设

写这个文章是用来学习的,记录一下我的学习过程。希望我能一直坚持下去,我只是一个小白,只是想好好学习,我知道这会很难,但我还是想去做! 本文写于:2025.04.08 STM32开发板学习——第26节: [9-2] USART串口外设 前言开发板说明引用解答和科普…

【学Rust写CAD】31 muldiv255函数(muldiv255.rs,已经取消)

源码 // Calculates floor(a*b/255 0.5) #[inline] pub fn muldiv255(a: u32, b: u32) -> u32 {// The deriviation for this formula can be// found in "Three Wrongs Make a Right" by Jim Blinn.let tmp a * b 128;(tmp (tmp >> 8)) >> 8 }代…