Android Unreal Engine Dumper with dedicated game profiles and a generic AutoFix pipeline.
创作者: 曦曦 (DreamFekk)
GitHub: https://github.com/DreamFekk
禁止圈钱盗卖
AutoUEDump 是一个面向 Android Unreal Engine 游戏的外部可执行 Dumper,基于 AndUEDumper 持续修改而来,并融合了多项接近 Dumper-7 风格的自动化流程。
项目当前的设计目标是:
- 优先匹配已适配游戏的专用 Profile
- 对未适配游戏自动回落到通用
AutoFix - 自动完成 UE 版本识别、关键地址定位和偏移修补
- 自动输出 SDK、对象、偏移、日志与函数脚本
当前版本默认使用自动流程,不再要求用户手动选择游戏类型。
- 自动扫描当前正在运行的 UE 游戏进程
- 自动区分专用 Profile 与通用
AutoFix - 自动初始化
GNames、FNamePool、GUObjectArray - 自动检测 UE4 / UE5 版本信息
- 自动加载预设偏移并执行运行时修补
- 自动修补
NamePrivate、SuperStruct、Children、Property、Function等关键偏移 - 自动解析
GWorld、GEngine、Matrix、Physx、FrameCount - 自动定位
StaticFindObject、NativeAndroidApp、ProcessEvent - 支持从内存导出
libUE4.so/libUnreal.so - 生成适用于 IDA / Ghidra 的
script.json - SDK 按类型拆分输出,不再全部塞进单个
AIOHeader.hpp - 虚表注释同时输出
VTableIndex、槽位偏移和函数相对 UE 基址偏移
程序启动后会执行以下流程:
- 自动扫描正在运行的 UE 游戏进程
- 如果只找到一个候选进程则直接使用
- 如果找到多个候选进程,则只要求用户选择进程序号
- 如果包名命中已适配游戏,则优先使用专用 Profile
- 如果没有命中专用 Profile,则自动使用
AutoFix (UE4/UE5 Generic) - 运行时询问是否需要额外导出 UE 动态库
默认输出目录为:
/sdcard/AutoUEDump
每个游戏的输出目录为:
/sdcard/AutoUEDump/<package>
当前仓库包含以下专用游戏 Profile:
- 暗区突围
- 三角洲行动(Guobject 目前还没有修复好 有缘人可以自己修复)
- 远光 84
- 枪战特训 2
- 无畏契约
- 洛克王国: 世界
- 和平精英
说明:
- 命中以上包名时,会优先使用专用 Profile
- 未命中时,自动回落到通用
AutoFix
当前 AutoFix 已集成以下能力:
- 扫描 UE 版本字符串
- 同时扫描 UE ELF 段与全进程
rw-p内存段 - 按 UE4 / UE5 家族加载预设偏移
- 执行运行时偏移修补
- 输出修补前后结果
- 通过通用特征码扫描
Matrix、Physx、FrameCount - 以接近
Dumper-7的方式暴力定位GNames、FNamePool、GUObjectArray
导出目录中通常会生成以下文件:
运行日志,包含进程识别、初始化、修补、导出阶段和错误信息。
对象列表导出,便于快速查看对象索引、地址与全名。
关键偏移与地址导出,通常包含:
- UE 结构偏移
GNames/FNamePoolGUObjectArrayGWorld/GEngineMatrix/Physx/FrameCountStaticFindObject/NativeAndroidApp/ProcessEvent
SDK 总入口头文件。当前仅负责聚合包含:
SDK_Enums.hppSDK_Structs.hppSDK_Classes.hpp
所有枚举统一输出文件。
所有结构体统一输出文件。
所有类统一输出文件,函数声明与虚表相关注释也会出现在这里。
函数脚本导出,适合后续用于 IDA / Ghidra 等逆向工具。当前 JSON 顶层还会包含:
__author__author_url__notice
当前 SDK 输出具有以下特点:
- 枚举、结构体、类已经按类型拆分到不同头文件
- 每个导出文件顶部会自动追加以下声明
// 创作者: 曦曦(DreamFekk) https://github.com/DreamFekk
// 禁止圈钱盗卖- 虚表函数注释中会输出:
VTableIndexOffsetReal
其中:
Offset表示虚表槽位偏移Real表示函数地址相对libUE4.so/libUnreal.so基址的偏移
建议将可执行文件推送到:
/data/local/tmp
示例:
adb push AutoUEDump /data/local/tmp/
adb shell chmod 777 /data/local/tmp/AutoUEDumpadb shell
su
cd /data/local/tmp
./AutoUEDump程序启动后会询问:
- 是否从内存导出 UE 动态库
如果检测到多个 UE 进程,则需要输入:
- 进程序号
导出完成后,结果默认位于:
/sdcard/AutoUEDump/<package>
当前项目主构建方式为 CMake。
- Android NDK
- CMake
- Ninja
- 支持 C++20 的 clang 工具链
主项目 CMakeLists.txt 位于:
AndUEDumper/CMakeLists.txt
当前主要配置包括:
- 项目名:
AutoUEDump - 构建类型:
Release - ABI:
arm64-v8a - Android API:
30
进入主工程目录:
cd AndUEDumper/AndUEDumper使用 CMake 生成并编译:
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build build -j4可执行文件默认输出到:
AndUEDumper/AndUEDumper/outputs/arm64-v8a
主要源码目录如下:
AndUEDumper/src/executable.cpp负责程序入口、交互逻辑、自动进程检测与文件保存AndUEDumper/src/Dumper.cpp负责整体导出流程AndUEDumper/src/UPackageGenerator.cpp负责 SDK 生成逻辑AndUEDumper/src/UE/UEGameProfiles包含各专用游戏 Profile 与AutoFixProfileAndUEDumper/src/AutoFix包含自动偏移修补、虚表解析、ARM64 解码等功能
本项目仅用于学习研究 Unreal Engine 结构、逆向分析与自动化导出流程。
- 禁止圈钱
- 禁止盗卖
- 禁止将导出结果包装后进行付费售卖
- AndUEDumper
- Dumper-7
- UEDumper
- Il2CppDumper
- UE4Dumper-4.25
- GPT Claude 提供了部分代码的优化与建议