当前位置: 首页 > news >正文

5.x86游戏实战-CE定位基地址

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

本次游戏没法给

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

上一个内容:4.x86游戏实战-人物状态标志位

上一个内容通过CE未知的初始值、未变动的数值、变动的数值筛选找到了人物的状态标志

现在就有一个问题,游戏重启之后,地址就会发生变化,变化了代码也要同步改,这就很麻烦,它有没有一个固定的地址?答案是有的,我们写的java、c/c++等语言,到最后都会变成汇编语言,编译好的汇编代码不管游戏重启还是操作系统重启,它都不会变,然后既然游戏它重启、操作系统重启都可以正常找到人物状态标志这个值,这说明这个值(内存地址)它肯定有一个固定的位置存放着,如果没有固定的位置存放那么游戏它也不知道怎么找,知道这一点之后,那怎么找这个固定的值?请看下方VCR

首先打开CE

点击下图红框,附加游戏

然后再次通过 未知的初始值、未变动的数值、变动的数值筛选找人物的状态标志,找到之后鼠标右击选择是什么访问了这个地址

然后就会有4个

然后可以看出都是一个数字加14C,

然后选中一个点反汇编

可以看到下图红框位置,mov eax,[00A107BC],这个意思是把A107BC是一个内存地址,[]的意思是把内存地址里放的值拿出来,mov 是赋值的意思,合起来就是把A107BC位置里放的值放到eax寄存器中

然后下图红框位置,mov eax,[eax+60],这个60是十六进制的60,肉眼可以看到的数字在没有特出设定下默认所有工具里都是用十六进制显示,然后eax+60,这意思就是[A107BC]+60,也就是从 A107BC地址里存放的值加60,加完60之后它又会是一个内存地址,然后通过[]eax+60这个内存地址中的值取出来放到eax中

然后下图红框位置cmp dword ptr[eax+14C],02,这意思是,ptr是地址的意思,dword是4字节数字的意思,dword ptr[eax+14c]的意思是eax+14c是一个内存地址,dword ptr的作用就是把内存地址的值转成4字节数字,也就是从eax+14c开始往后读4个字节,eax的值是通过上方mov得到的,eax转成具体的数字[[A107BC]+60]+14c,然后到这还没有解释cmp,这个cmp是汇编指令(汇编代码),可以百度cmp指令这个关键词去搜(汇编代码+指令 这样的关键字组合去搜),这个cmp是比较的意思,然后cmp dword ptr[eax+14C],02中的这个02,就是比较[[[A107BC]+60]+14c] 是大于2还是小于2还是等于2,具体是大于还是小于取决去cmp下一行的代码是什么(cmp只是单纯比较,它会把等于、大于、小于全都给比较了,比较完会记录下来,然后没别的操作了,具体怎么用后面在说,现在就这样理解)

然后上方得到一个[[[A107BC]+60]+14c] 这个,然后最开始说汇编代码编译完是不会变化的,然后刚开始有一个mov eax,[A107BC],这一句就是编译完的代码,它是不会变的,这里就有一个概念,这个概念叫做基址(基地址),A107BC就是基址,所以正确做法是通过基址+xx数字来得到我们想要的数据,这个xx数字有一个称呼,叫做偏移

然后回到CE,点击手动添加地址

勾选上指针

然后把 A107BC放进去

然后点添加偏移

然后如下图,下图的地址不管是游戏重启还是操作系统重启它都可以用,它都不会发生变化

然后写的时候,数字前面最好加上0x,0x后面的数字会被当做十六进制数字,有些工具会默认以十六进制的方式读,所以不加0x也可以,但是有的工具不加0x它就会当成十进制读,所以最好加上0x

它的esi的值就无法那么轻松的看到,这种的要用动态调式工具,CE顶多搜索点内存里的数据,动态调式后面会写


相关文章:

5.x86游戏实战-CE定位基地址

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 本次游戏没法给 内容参考于:微尘网络安全 上一个内容:4.x86游戏实战-人物状态标志位 上一个内容通过CE未知的初始值、未变动的数值、…...

istitle()方法——判断首字母是否大写其他字母小写

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 语法参考 istitle()方法用于判断字符串中所有的单词首字母是否为大写而其他字母为小写。istitle()方法的语法格式如下: str.istitle() …...

Linux实用命令练习

目录 一、常用命令 二、系统命令 三、用户和组 四、权限 五、文件相关命令 六、查找 七、正则表达式 八、输入输出重定向 九、进程控制 十、其他命令 1、远程文件复制:scp 2、locate查找 3、which命令 4、设置或显示环境变量:export 5、修…...

刷题——二叉搜索树与双向链表

二叉搜索树与双向链表_牛客题霸_牛客网 方法一: void dfs(TreeNode* pRootOfTree, TreeNode* &pre){if(pRootOfTree NULL)return;dfs(pRootOfTree->left, pre);//所有左子树if(pre)pre->right pRootOfTree;pRootOfTree->left pre;pre pRootOfTree…...

【Linux】进程优先级 | 环境变量

目录 Ⅰ. 进程优先级(Process Priority) 1. 什么是进程优先级? 2. 查看系统进程 3. 修改进程优先级 4.优先级调度原理 Ⅱ. 进程的切换(Process Switch) 1. 竞争与独立 2. 并行与并发 3. 进程抢占 4.实现切换…...

最新手动迁移WordPress方法

手动迁移WordPress网站主要步骤有:迁移文件、迁移数据库、修复数据库连接。 对于WordPress Installations,只有两个主要组件,您需要访问手动将安装迁移到新主机:文件和数据库。 迁移文件 将文件从旧主机迁移到新的最简单方法之…...

ChatGPT在程序开发中的应用:提升生产力的秘密武器

在当今飞速发展的科技时代,程序开发已经成为许多企业和个人必不可少的技能。然而,编写代码并非总是顺风顺水,面对复杂的算法、繁琐的调试、持续不断的需求变更,程序员们常常感到压力山大。在这种情况下,ChatGPT应运而生…...

AI与Python共舞:如何利用深度学习优化推荐系统?

AI与Python共舞:如何利用深度学习优化推荐系统? 当你在浏览新闻、电影或是购物平台时,那些仿佛读懂你心思的个性化推荐背后,正是AI技术与Python语言的精妙协作。今天,我们将通过一个实际案例,探索如何利用…...

URLSearchParams: 浏览器中的查询字符串处理利器

一、 概述 在Web开发中,处理URL的查询字符串是一个常见任务。URLSearchParams API 提供了一种简单而强大的方法来处理Web URL的查询参数。它是一个内置的浏览器API,允许你以名称/值对的形式轻松地创建、读取、更新和删除查询参数。 二、URLSearchParam…...

2024最新初级会计职称题库来啦!!!

16.根据增值税法律制度的规定,下列各项中,属于"提供加工、修理修配劳务"的是()。 A.修理小汽车 B.修缮办公楼 C.爆破 D.矿山穿孔 答案:A 解析:选项AB:修理有形动产(…...

Stirling PDF 部署 - 强大的PDF Web在线编辑工具箱

简介 这是一个强大的、可本地托管的、基于 Web 的 PDF 操作工具,可使用 Docker部署。它使您能够对 PDF 文件执行各种操作,包括拆分、合并、转换、重组、添加图像、旋转、压缩等。这个本地托管的 Web 应用程序已经发展到包含一套全面的功能,可…...

大数据面试题之MapReduce(3)

目录 reduce任务什么时候开始? MapReduce的reduce使用的是什么排序? MapReduce怎么确定MapTask的数量? Map数量由什么决定 MapReduce的map进程和reducer进程的ivm垃圾回收器怎么选择可以提高吞吐量? MapReduce的task数目划分 MapReduce作业执行的过程中,中…...

[leetcode]squares-of-a-sorted-array. 有序数组的平方

. - 力扣&#xff08;LeetCode&#xff09; class Solution { public:vector<int> sortedSquares(vector<int>& nums) {int n nums.size();vector<int> ans(n);for (int i 0, j n - 1, pos n - 1; i < j;) {if (nums[i] * nums[i] > nums[j] *…...

使用Spring Boot和Spring Data JPA进行数据库操作

使用Spring Boot和Spring Data JPA进行数据库操作 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01;在现代的Web应用开发中&#xff0c;数据库操作是不可或缺的一…...

《昇思25天学习打卡营第17天 | 昇思MindSporeCycleGAN图像风格迁移互换》

17天 本节学习了CycleGAN图像风格迁移互换。 CycleGAN即循环对抗生成网络&#xff0c;该模型实现了一种在没有配对示例的情况下学习将图像从源域 X 转换到目标域 Y 的方法。该模型一个重要应用领域是域迁移&#xff0c;可以通俗地理解为图像风格迁移。其实在 CycleGAN 之前&a…...

SecureCRT使用SSH登录服务器报错:Key exchange failed

SecureCRT使用SSH登录Ubuntu服务器报错&#xff1a;Key exchange failed 原因&#xff1a; ssh客户端与服务器的公钥协商失败&#xff0c;SecureCRT客户端所指定的秘钥交换算法&#xff08;KexAlgorithms &#xff09;&#xff0c;不在服务端支持范围内。可能是服务端的sshd版…...

Oracle给用户单个表查询权限

Oracle给用户单个表查询权限 1. 创建用户 --创建用户thfj_test,密码为thfj_test create user thfj_test identified by thfj_test;2. 用户授权 --授权连接数据库权限给thfj_test grant create session to thfj_test; --授权查询表USER_INFO 的权限给thfj_test grant sele…...

[Go 微服务] Kratos 验证码业务

文章目录 1.环境准备2.验证码服务2.1 kratos 初始化验证码服务项目2.2 使用 Protobuf 定义验证码生成接口2.3 业务逻辑代码实现 1.环境准备 protoc和protoc-gen-go插件安装和kratos工具安装 protoc下载 下载二进制文件&#xff1a;https://github.com/protocolbuffers/protobu…...

等保2.0安全计算环境解读

等保2.0&#xff0c;即网络安全等级保护2.0制度&#xff0c;是中国为了适应信息技术的快速发展和安全威胁的新变化而推出的网络安全保护标准。相较于等保1.0&#xff0c;等保2.0更加强调主动防御、动态防御和全面审计&#xff0c;旨在实现对各类信息系统的全面保护。 安全计算环…...

Qt视频播放器(二)

文章目录 1. 安装FFmpeg库2. 创建Qt项目3. 配置项目文件CMakeLists.txt4. 实现核心FFmpeg功能`videoplayer.h``videoplayer.cpp`5. 实现QML界面`main.qml`6. 主函数`main.cpp`运行项目详细说明结合FFmpeg进行视频播放的核心部分,并使用QML进行界面设计,您可以实现一个功能强大…...

2025届最火的AI辅助论文方案横评

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 深寻作为先进的大型语言模型&#xff0c;在学术论文写作领域显现出明显的应用潜力&#xff…...

深入RISC-V链接脚本:从.lds文件看C程序的内存‘出生’与‘搬家’全过程

深入RISC-V链接脚本&#xff1a;从.lds文件看C程序的内存‘出生’与‘搬家’全过程 在嵌入式开发的世界里&#xff0c;一个C程序从源代码到最终在硬件上运行&#xff0c;经历了编译、链接和加载三个关键阶段。这个过程就像一个人的生命历程&#xff1a;编译是"出生"&…...

MoviePilot连接TMDB异常的终极诊断指南:5步快速排查与完整解决方案

MoviePilot连接TMDB异常的终极诊断指南&#xff1a;5步快速排查与完整解决方案 【免费下载链接】MoviePilot NAS媒体库自动化管理工具 项目地址: https://gitcode.com/gh_mirrors/mo/MoviePilot MoviePilot作为NAS媒体库自动化管理工具&#xff0c;其核心功能依赖TheMov…...

NAT 类型详解:四种 NAT 的数据流与原理解析

NAT 类型详解&#xff1a;四种 NAT 的数据流与原理解析摘要&#xff1a;NAT&#xff08;Network Address Translation&#xff09;是 P2P 通信中绕不开的关卡。不同的 NAT 类型决定了内网设备能否被外部直接访问&#xff0c;直接影响 WebRTC 等 P2P 技术的穿透成功率。本文通过…...

AI编程也开始“贵价提速”?Cursor上线Opus极速模式,官方却劝你:别开,真不值!

前言各位码农老铁们&#xff0c;最近有没有感觉写代码像在开手动挡老爷车——油门踩到底&#xff0c;AI还在“思考人生”&#xff1f;别急&#xff0c;Cursor贴心地给你装了个“涡轮增压”&#xff1a;Claude Opus 4.7 Fast mode&#xff0c;号称速度拉满、输出飞起&#xff01…...

深入PEX8796:从Serdes到Virtual Switch,图解PCIe交换芯片的三种工作模式

深入解析PEX8796&#xff1a;PCIe交换芯片的架构设计与模式创新 在高速数据传输领域&#xff0c;PCIe交换芯片如同交通枢纽般连接着计算系统的各个组件。作为PLX公司&#xff08;现已被博通收购&#xff09;的经典之作&#xff0c;PEX8796凭借其灵活的架构设计和多样化的操作模…...

国产信创电脑是什么意思?为什么政府和企业都在用?

国产信创电脑——这个名词虽然听起来有些陌生&#xff0c;但它正在深刻影响着我们的工作和生活。从政府采购到企业信息化方案&#xff0c;再到科技媒体的报道&#xff0c;“国产信创电脑”已经成为了关键词之一。那么&#xff0c;它究竟是什么&#xff1f;为什么如此重要&#…...

Blender到Unity模型导出的终极解决方案:免费插件完整指南

Blender到Unity模型导出的终极解决方案&#xff1a;免费插件完整指南 【免费下载链接】blender-to-unity-fbx-exporter FBX exporter addon for Blender compatible with Unitys coordinate and scaling system. 项目地址: https://gitcode.com/gh_mirrors/bl/blender-to-uni…...

基于CircuitPython与RP2350的嵌入式多声道音频系统设计与实践

1. 项目概述&#xff1a;用CircuitPython打造你的专属交互式音频系统如果你玩过树莓派Pico或者Adafruit的Feather系列开发板&#xff0c;可能会觉得在微控制器上处理音频是件挺麻烦的事——要么得用专门的解码芯片&#xff0c;要么代码复杂得让人头疼。但最近我在一个互动艺术装…...

Lindy AI Agent工作流安全合规红线(GDPR+等保3.0双认证实操清单)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Lindy AI Agent工作流安全合规红线总览 Lindy AI Agent 作为面向企业级场景的智能体编排平台&#xff0c;其工作流在设计、部署与运行全生命周期中必须严格遵循数据安全、模型可解释性、访问控制及监管…...