22.第二阶段x86游戏实战2-背包遍历REP指令详解
免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!
本次游戏没法给
内容参考于:微尘网络安全
本人写的内容纯属胡编乱造,全都是合成造假,仅仅只是为了娱乐,请不要盲目相信。
工具下载:
链接:https://pan.baidu.com/s/1rEEJnt85npn7N38Ai0_F2Q?pwd=6tw3
提取码:6tw3
复制这段内容后打开百度网盘手机App,操作更方便哦
上一个内容:21.第二阶段x86游戏实战2-C++实现寻路
上一个内容里使用C++实现了寻路功能,本次再来找背包和背包里的物品,开始之前需要了解一个东西,对象,对象什么意思?对象的物理样子是一块内存空间的首地址,比如现在有10个内存空间,然后内存地址分别是0、1、2、3、4、5、6、7、8、9,然后在这对象也就是指的是0这个地址,使用对象的时候,通过会以对象+偏移的方式来访问对象的内存空间,比如访问第二个内存那就是对象+1也就是0+1,第二个内存空间的地址也就是内存地址1,为什么会有对象这个东西,如果没有对象这个东西,现在有一块内存地址你该怎样形容它?比如专门存放人名的内存地址,如果不用对象应该会用来存放人名的内存地址这样形容,如果带上对象就可以 用人名对象 这样形容这块内存空间,这样就方便了很多,使用和管理方面也方便了很多,然后背包对象(正常来讲看到背包会想到背包里的东西,所以背包对象就指的某块内存专门用来存放背包里东西的内存空间),知道了这些然后可以开始了
背包对象或者说是背包结构,结构一般是指的内存空间里都会有哪些数据,仅仅是会有哪些数据并没有真实的数据,用对象描述的时候一般是在使用的时候,这意思是用对象描述的时候,背包的内存空间创建好了,数据也写进去了,可以直接用,所以对象和结构描述的都是同样的东西只是阶段不一样,不严谨点用结构还是对象都可以都一样
对象和结构还有一个数据结构,数据结构跟结构一样,只是叫法不同,然后三个常用的话术的意思到这就完了,这三个话术不理解也没事,顶多跟人沟通不了,没别的影响,对于会不会逆向来说没影响 ,然后开始找背包数据
然后找背包数据,背包里面会有很多物品,物品里面会有数量,然后就通过物品的数量来找背包,因为想找物品肯定是要通过背包对象来得到物品,所以通过物品是可以找到背包的,然后打开游戏,打开CE搜索物品的数量(游戏中一般会有使用游戏币来购买的加血我药,通过它来搞数量就可以),下图背包里物品的数量是61
![]()
然后使用字节搜索,如下图
![]()
然后会扫描出很多,这时改变物品的数量,比如使用物品或拆分物品
![]()
然后点再次扫描会发现少很多,如下图,然后接着继续拆分物品或使用物品
![]()
最终剩下一个(也可能不会剩下一个,会剩下多个)
![]()
如果剩下多个,那就再拆分物品或使用物品,如果最终就是有多个 ,那就随便用一个找找看,下图的地址与上图的地址不一样是因为不小心把背包关了,又重新找的,然后记录下方的地址0x455DA6B8,然后打开OD并附加到游戏
![]()
然后点击内存区域,然后按CTRL+G在内存区域跳转过去,跳转过去之后,右击选择Hex-》Hex/ASCII8位,这样就会以1字节(字节)方式显示内存的数据了
![]()
如下图39的十进制是57
![]()
![]()
然后鼠标左键单击下图红框位置,然后右击下图红框位置
![]()
然后选择断点-》硬件写入-》Byte
![]()
然后下了硬件写入断点之后它可能没有什么反应,这需要回到游戏,再次使用物品或拆分物品,总之对物品做个操作,因为在使用物品的时候,它一定会去背包里找这个物品(去背包里循环找物品),找到这个物品之后再对物品做操作
![]()
然后就会来到下图红框位置
![]()
这里有一个新指令rep,想看懂这个指令,下图红框两行要一起看,ecx的值是0x2F,ecx在这相当于一个计数器,每执行一次rep指令ecx就会减1,然后rep movs dword ptr es:[edi], dword ptr[esi],假设esi的值是1000,然后esi的值是2000,它们都没[]括起来的所以esi和edi的值都是内存地址,[]就是取内存地址的值,然后rep执行一次就会把esi的值放到edi的值里也就是把edi的值修改成esi的值,然后进行加4,dword是4字节所以加4,这是个什么意思,带入场景这里是通过修改背包里物品触发的,也就是说edi是背包对象,esi是最新的物品数据,由于是通过修改物品数量触发到这里的,这里的rep操作就是在刷新背包里物品的信息,所以接下来通过追edi的值来源就能找到背包对象的基址,本次到这就结束了,下次再找
![]()
基址偏移0x2F8E36,下方基址偏移是后补的,所以地址会与上图不一样

相关文章:
22.第二阶段x86游戏实战2-背包遍历REP指令详解
免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 本次游戏没法给 内容参考于:微尘网络安全 本人写的内容纯属胡编乱造,全都是合成造假,仅仅只是为了娱乐,请不要…...
java 的三种IO模型(BIO、NIO、AIO)
java 的三种IO模型(BIO、NIO、AIO) 一、BIO 阻塞式 IO(Blocking IO)1.1、BIO 工作机制1.2、BIO 实现单发单收1.3、BIO 实现多发多收1.4、BIO 实现客户端服务端多对一1.5、BIO 模式下的端口转发思想 二、NIO 同步非阻塞式 IO&#…...
低级语言和高级语言、大小写敏感、静态语言和动态语言、链接
低级语言和高级语言 一般而言,更接近硬件的语言被称为低级语言,反之,更远离硬件被称为高级语言。C语言既有低级语言的特点,又有高级语言的特点,又被称为系统语言。Java/Python一般被称为高级语言。 大小写敏感 DOS/Win…...
P3197 [HNOI2008] 越狱
题目传送门 题面 [HNOI2008] 越狱 题目描述 监狱有 n n n 个房间,每个房间关押一个犯人,有 m m m 种宗教,每个犯人会信仰其中一种。如果相邻房间的犯人的宗教相同,就可能发生越狱,求有多少种状态可能发生越狱。 …...
会声会影导出视频mp4格式哪个最高清,会声会影输出格式哪个清晰
调高分辨率后,mp4视频还是不清晰。哪怕全部使用4K级素材,仍然剪不出理想中的高画质作品。不是你的操作有问题,而是剪辑软件没选对。Corel公司拥有全球顶尖的图像处理技术,该公司研发的会声会影视频剪辑软件,在过去的20…...
Linux:进程调度算法和进程地址空间
✨✨✨学习的道路很枯燥,希望我们能并肩走下来! 文章目录 目录 文章目录 前言 一 进程调度算法 1.1 进程队列数据结构 1.2 优先级 编辑 1.3 活动队列 编辑 1.4 过期队列 1.5 active指针和expired指针 1.6 进程连接 二 进程地址空间 2.1 …...
TCP ---滑动窗口以及拥塞窗口
序言 在上一篇文章中我们介绍了 TCP 中的协议段格式,以及保证其可靠传输的重传机制,着重介绍了三次握手建立连接,四次挥手断开连接的过程(👉点击查看)。 这只是 TCP 保证通信可信策略的一部分,现在让我们继续深入吧&…...
第十二章--- fixed 和 setprecision 函数、round 函数、进制转换及底层逻辑
1. 保留几位小数 在C中,如果你想要控制输出的小数点后的位数,可以使用<iomanip>头文件提供的fixed和setprecision函数。这里的fixed用于设置浮点数的输出格式为定点表示法,而setprecision(n)则用来指定小数点后保留的位数。具体用法如…...
ASP.NetCore---I18n(internationalization)多语言版本的应用
文章目录 0.实现的效果如下1.创建新项目I18nBaseDemo2.添加页面中的下拉框3.在HomeController中添加ChangeLanguage方法4.在Progress.cs 文件中添加如下代码:5. 在progress.cs中添加code6.添加Resource资源文件7.在页面中引用i18n的变量8. 重启项目,应该…...
vue3 环境配置vue-i8n国际化
一.依赖和插件的安装 主要是vue-i18n和 vscode的自动化插件i18n Ally https://vue-i18n.intlify.dev/ npm install vue-i18n10 pnpm add vue-i18n10 yarn add vue-i18n10 vscode在应用商城中搜索i18n Ally:如图 二.实操 安装完以后在对应项目中的跟package.jso…...
2024 uniapp入门教程 01:含有vue3基础 我的第一个uniapp页面
uni-app官网uni-app,uniCloud,serverless,快速体验,看视频,10分钟了解uni-app,为什么要选择uni-app?,功能框架图,一套代码,运行到多个平台https://uniapp.dcloud.net.cn/ 准备工作:HBuilder X 软件 HBuilder X 官网下载…...
CentOS 7文件系统
从centos7开始,默认的文件系统从ext4变成了XFS。随着虚拟化的应用越来越广泛,作为虚拟化磁盘来源的大文件(单个文件几GB级别)越来越常见。 1.XFS组成部分: XFS文件系统在数据的分布上主要划分为三部分:数据…...
vue源码解析(源码解析学习大纲)
文章目录 Vue源码解析入手方向大纲1.核心概念1-1.响应式系统1-2. 组件1-3. 虚拟DOM1-4. 指令1-5. 生命周期钩子 2.虚拟DOM2-1. 概念2-2. 工作流程2-3. 示例2-4.总结 3.组件系统3-1. 组件的定义3-2. 组件的创建3-3. 组件的模板3-4. 生命周期3-5. 事件处理3-6. 插槽(S…...
工行企业网银U盾展期后有两个证书问题的解决方法
工行企业网银U盾证书快到期后,可以自助展期,流程可以根据企业网银提示页面操作。操作后,可能存在两个新旧两个证书并存的情况,致使网银转账等操作失败,如图: 其原因是新证书生成后,旧证书没有删…...
《Linux从小白到高手》理论篇:文件权限控制及文件操作相关的命令
List item 本篇介绍Linux文件权限控制及文件操作相关的命令,看完本文,有关Linux文件权限控制及文件操作相关的常用命令你就掌握了99%了。 文件权限 在介绍文件权限之前先来复习下Linux的文件类型,始终记住那句话:Linux系统下&a…...
前端框架React的详细的学习方法和过程
学习React作为前端架构的一部分,是一个系统且逐步深入的过程。以下是一个详细的学习方法和过程,可以帮助你有效地掌握React: 1. 理解React的基础知识 首先,你需要了解React的基本概念,包括它是什么、为什么使用它以及…...
linux中缓存,在kafka上应用总结
linux中的缓存 页缓存 pagecatch(读缓存用于提供快速读)块缓存(用于提供其他设备快速写)当对读缓存读的时候,修改了读的数据,页缓存就会被标记为脏数据,等到写的时候它会向块缓存同步数据&…...
前端练习小项目 —— 让图片变得更 “色”
前言:相信读者在学习完了HTML、CSS和JavaScript之后已经想要迫不及待的想找一个小型的项目来练练手,那么这篇文章就正好能满足你的 “需求”。 ✨✨✨这里是秋刀鱼不做梦的BLOG ✨✨✨想要了解更多内容可以访问我的主页秋刀鱼不做梦-CSDN博客 在开始学习…...
时间卷积网络(TCN)原理+代码详解
目录 一、TCN原理1.1 因果卷积(Causal Convolution)1.2 扩张卷积(Dilated Convolution) 二、代码实现2.1 Chomp1d 模块2.2 TemporalBlock 模块2.3 TemporalConvNet 模块2.4 完整代码示例 参考文献 在理解 TCN 的原理之前ÿ…...
零散的知识
1.物化 在SQL中,物化(Materialization)是指将查询结果保存为物理数据结构以供后续使用的过程。这与普通的视图或查询不同,物化视图会存储查询的结果,而不是每次查询时都动态地重新计算数据。 ①物化视图 物化视图是一…...
java_网络服务相关_gateway_nacos_feign区别联系
1. spring-cloud-starter-gateway 作用:作为微服务架构的网关,统一入口,处理所有外部请求。 核心能力: 路由转发(基于路径、服务名等)过滤器(鉴权、限流、日志、Header 处理)支持负…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了: 这一篇我们开始讲: 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下: 一、场景操作步骤 操作步…...
多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验
一、多模态商品数据接口的技术架构 (一)多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如,当用户上传一张“蓝色连衣裙”的图片时,接口可自动提取图像中的颜色(RGB值&…...
听写流程自动化实践,轻量级教育辅助
随着智能教育工具的发展,越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式,也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建,…...
【Go语言基础【13】】函数、闭包、方法
文章目录 零、概述一、函数基础1、函数基础概念2、参数传递机制3、返回值特性3.1. 多返回值3.2. 命名返回值3.3. 错误处理 二、函数类型与高阶函数1. 函数类型定义2. 高阶函数(函数作为参数、返回值) 三、匿名函数与闭包1. 匿名函数(Lambda函…...
【电力电子】基于STM32F103C8T6单片机双极性SPWM逆变(硬件篇)
本项目是基于 STM32F103C8T6 微控制器的 SPWM(正弦脉宽调制)电源模块,能够生成可调频率和幅值的正弦波交流电源输出。该项目适用于逆变器、UPS电源、变频器等应用场景。 供电电源 输入电压采集 上图为本设计的电源电路,图中 D1 为二极管, 其目的是防止正负极电源反接, …...
消防一体化安全管控平台:构建消防“一张图”和APP统一管理
在城市的某个角落,一场突如其来的火灾打破了平静。熊熊烈火迅速蔓延,滚滚浓烟弥漫开来,周围群众的生命财产安全受到严重威胁。就在这千钧一发之际,消防救援队伍迅速行动,而豪越科技消防一体化安全管控平台构建的消防“…...
车载诊断架构 --- ZEVonUDS(J1979-3)简介第一篇
我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 做到欲望极简,了解自己的真实欲望,不受外在潮流的影响,不盲从,不跟风。把自己的精力全部用在自己。一是去掉多余,凡事找规律,基础是诚信;二是…...
【iOS】 Block再学习
iOS Block再学习 文章目录 iOS Block再学习前言Block的三种类型__ NSGlobalBlock____ NSMallocBlock____ NSStackBlock__小结 Block底层分析Block的结构捕获自由变量捕获全局(静态)变量捕获静态变量__block修饰符forwarding指针 Block的copy时机block作为函数返回值将block赋给…...

