Encryqed/Dumper-7
GitHub: Encryqed/Dumper-7
一款支持所有 UE4/UE5 版本的游戏 SDK 生成器,通过 DLL 注入导出完整的类、函数和偏移信息。
Stars: 1709 | Forks: 398
# Dumper-7
适用于所有 Unreal Engine 游戏的 SDK 生成器。支持的版本包括所有 UE4 和 UE5。
## 如何使用
- 在 x64-Release 模式下编译 dll
- 将 dll 注入到目标游戏中
- SDK 会生成到由 `Settings::SDKGenerationPath` 指定的路径中,默认为 `C:\\Dumper-7`
- **请参阅 [UsingTheSDK](UsingTheSDK.md) 获取入门指南,或了解如何从旧版 SDK 迁移。**
## 重写偏移
- 仅当生成器未找到偏移或偏移不正确时,才重写偏移
- 所有重写操作均在 **Generator.cpp** 内的 **Generator::InitEngineCore()** 中进行
- GObjects(另请参阅 [GObjects-Layout](#overriding-gobjects-layout))
ObjectArray::Init(/*GObjectsOffset*/, /*ChunkSize*/, /*bIsChunked*/);
/* 确保仅使用 sdk 中存在的类型(例如 uint8, uint64) */
InitObjectArrayDecryption([](void* ObjPtr) -> uint8* { return reinterpret_cast(uint64(ObjPtr) ^ 0x8375); });
- FName::AppendString
- 强制使用 GNames:
FName::Init(/*bForceGNames*/); // 如果 AppendString 偏移错误,此方法很有用
- 重写偏移:
FName::Init(/*OverrideOffset, OverrideType=[AppendString, ToString, GNames], bIsNamePool*/);
- ProcessEvent
Off::InSDK::InitPE(/*PEIndex*/);
## 重写 GObjects-Layout
- 仅当你的游戏未自动找到 GObjects 时才添加新的布局。
- 布局重写位于 `ObjectArray.cpp` 的大约第 30 行
- 对于 UE4.11 到 UE4.20,将布局添加到 `FFixedUObjectArrayLayouts`
- 对于 UE4.21 及更高版本,将布局添加到 `FChunkedFixedUObjectArrayLayouts`
- **示例:**
FFixedUObjectArrayLayout // 默认 UE4.11 - UE4.20
{
.ObjectsOffset = 0x0,
.MaxObjectsOffset = 0x8,
.NumObjectsOffset = 0xC
}
FChunkedFixedUObjectArrayLayout // 默认 UE4.21 及以上
{
.ObjectsOffset = 0x00,
.MaxElementsOffset = 0x10,
.NumElementsOffset = 0x14,
.MaxChunksOffset = 0x18,
.NumChunksOffset = 0x1C,
}
## 配置文件
你可以选择通过 `Dumper-7.ini` 文件动态更改设置,而无需修改 `Settings.h`。
- **针对单个游戏**:在与游戏的 exe 文件相同的目录中创建 `Dumper-7.ini`。
- **全局**:在 `C:\Dumper-7` 下创建 `Dumper-7.ini`
示例:
```
[Settings]
SleepTimeout=100
SDKNamespaceName=MyOwnSDKNamespace
```
## 问题
如果你在使用 Dumper 时遇到任何问题,请在此仓库中创建一个 Issue\
并**详细**解释问题。
- 如果你的游戏在转储过程中崩溃,请将 Visual Studio 调试器附加到游戏,并在调试配置下注入 Dumper-7.dll。
然后附上导致崩溃的异常截图、调用堆栈截图以及控制台输出。
- 如果 SDK 中存在任何编译器错误,请发送它们的截图。请注意,**仅构建错误**被视为错误,因为 Intellisense 经常报告误报。
请务必始终发送导致第一个错误的代码截图,因为这很可能会引发连锁反应导致后续错误。
- 如果你自己的 dll 项目崩溃,请彻底检查你的代码,以确保错误确实出在生成的 SDK 中。
标签:C++, DLL注入, DNS 反向解析, JARM, Offset Dumping, SDK生成器, SSH蜜罐, UE4, UE5, Unreal Engine, 云资产清单, 代码转储, 作弊工具, 偏移量分析, 内存分析, 内存布局, 动态链接库, 客户端加密, 客户端加密, 数据擦除, 流量审计, 游戏修改, 游戏外挂, 游戏安全, 虚幻引擎, 进程注入, 逆向工程