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

15.UE-游戏逆向-DumpUE struct

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

本次游戏没法给

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

上一个内容:14.UE-游戏逆向-DumpUE Function

struct需要知道下方的三个东西

UStruct、FField、FProperty

UStruct是一个用来描述结构体的东西,它就相当于下方的代码,就是一个类,然后这里面只有数据,数据是使用FField结构来描述的,FProperty是基于FField实现的,FField里面只有基本信息,比如成员变量的名称,然后成员变量的值是通过FProperty结构存储的,这里的FProperty是一个抽象,它有好多实现

class c{}

如下图红框FProperty的多个实现,下图红框只是一部分

接下来就来找UStruct、FField、FProperty这三个东西,然后通过CoreUObject.Vector来找,它是坐标的结构(x、y、z),它们的类型是float是4字节,然后3个4字节是12字节

还是使用ce的结构分析来找

下图红框指向的是FProperty,这里CE它分析错了,下图红框应该是个指针是个地址

然后在0x50位置右击选择指针,如下图可以看到0x50位置的值是1AE23656F00这与其它的地址开头是一样的,所以就可以认定是CE分析的有问题,把地址分析成了普通数据

然后选中0x51到0x54,右击选择删除

然后就可以了,下图的0x58是结构的大小3个4字节正好是12,然后0x50是指向的第一个成员变量,也就是一个FProperty(看到FProperty要知道包含了FField,因为FProperty基于FField实现的)

然后struct中还有一个SuperStruct,它使用来指向父struct的,这个CoreUObject.Vector没有,需要看CoreUObject.Struct这个结构它的SuperStruct指向CoreUObject.Field的地址,然后如下图就找CoreUObject.Struct的地址

下图是CoreUObject.Struct结构的内存,SuperStruct在0x40位置,如下图红框,为什么在0x40

如下图红框0x40位置的地址是可以和CoreUObject.Field的地址对上

然后struct就没别的需要知道的了,然后是FProperty,再次回到CoreUObject.Vector的内存,如下图点开0x50

然后成员变量的名字,如下图0x28位置是成员变量的名字,它是一个GName的id

如下图67950对应的字符串是x

下一个FProperty在0x20位置,如下图CE也把它分析错了

然后下图红框就是下一个成员变量,也就是y

可以通过0x28位置的GName的id来确认

如下图红框是Y

然后数据大小和偏移,0x3C位置的值是数据类型的大小,0x4C是偏移

然后是FProperty中的类(Class),是0x8位置,它与游戏基址开头一样都是7F,然后0x0位置是虚函数

然后是FProperty的大小,FProperty指的就是 CoreUObject.Property,想知道FProperty的大小需要进入CoreUObject.Property的内存,如下图红框它的内存地址

它的大小在0x58位置是0x78,下方的内存分析的有问题,FProperty的大小是0x78

以上的结构位置记住就行,UE4和UE5通杀,就算位置变了也不会有太大的变化


img

http://www.dtcms.com/a/469524.html

相关文章:

  • 百度统计api兰州企业网站排名优化
  • 网站右下角悬浮窗口js代码 兼容各浏览器页面置换算法课程设计
  • NeurIPS 2025 | 华中科大小米等提出语义提示扩散Transformer,实现精准深度估计新范式!
  • Ansible-playbook剧本
  • Mata Summon - Transform text prompts or photos into dynamic.
  • Arbess从入门到实战(11) - 使用Arbess+GitLab实现C++项目自动化部署
  • 做视频网站版权怎么解决企业建站费用情况
  • AICC2025 智算中心与算力服务论坛顺利举办
  • 卷积神经网络CNN(五): 标准CNN神经网络
  • Python 实现 Excel 文件加密与保护
  • 如何查找网站死链网站建设服务费属于
  • 容器编排大王Kubernetes——介绍与部署(1)
  • Python3 中级练习:简易库存管理系统
  • Centos 7/8 安装 Redis
  • 高通平台蓝牙学习--揭秘 WCN Split A2DP(终章)
  • 工业设计网站哪家好包头建设工程安全监督站网站
  • 云原生-k8s
  • 大型手游可以在云手机中流畅运行吗
  • 移动端云手机的优势都有哪些?
  • clk_divide时钟分频模块
  • 手机群控软件如何优化游戏运营的运营策略
  • 目前流行的网站开发设计品牌网站建设意义
  • 使用Mybatis-Plus,以及sqlite的使用
  • 一元一次方程的解
  • 自然语言处理中字节级与令牌级 Transformer 模型的对比分析
  • Android 编译速度优化:JVM堆内存扩充
  • 网站如何减少404跳转网站建设外包工作室
  • vue的hello小案例
  • SDL+WebGpu跨平台加速学习笔记
  • 第16章 C预处理器和C库