mirror of
https://github.com/a2x/cs2-dumper.git
synced 2025-04-24 19:25:34 +08:00
Fetch localPlayerPawn
This commit is contained in:
parent
3e04750334
commit
2bc3e32c2d
61
config.json
61
config.json
@ -4,41 +4,72 @@
|
|||||||
"name": "entityList",
|
"name": "entityList",
|
||||||
"module": "client.dll",
|
"module": "client.dll",
|
||||||
"pattern": "48 8B 0D ? ? ? ? 48 89 7C 24 ? 8B FA C1 EB",
|
"pattern": "48 8B 0D ? ? ? ? 48 89 7C 24 ? 8B FA C1 EB",
|
||||||
"relative": true,
|
"operations": [
|
||||||
"levels": 0,
|
{
|
||||||
"offset": 0
|
"type": "ripRelative"
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "globalVars",
|
"name": "globalVars",
|
||||||
"module": "client.dll",
|
"module": "client.dll",
|
||||||
"pattern": "48 89 0D ? ? ? ? 48 89 41",
|
"pattern": "48 89 0D ? ? ? ? 48 89 41",
|
||||||
"relative": true,
|
"operations": [
|
||||||
"levels": 0,
|
{
|
||||||
"offset": 0
|
"type": "ripRelative"
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "localPlayerController",
|
"name": "localPlayerController",
|
||||||
"module": "client.dll",
|
"module": "client.dll",
|
||||||
"pattern": "48 8B 05 ? ? ? ? 48 85 C0 74 4F",
|
"pattern": "48 8B 05 ? ? ? ? 48 85 C0 74 4F",
|
||||||
"relative": true,
|
"operations": [
|
||||||
"levels": 0,
|
{
|
||||||
"offset": 0
|
"type": "ripRelative"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "localPlayerPawn",
|
||||||
|
"module": "client.dll",
|
||||||
|
"pattern": "48 8D 05 ? ? ? ? C3 CC CC CC CC CC CC CC CC 48 83 EC ? 8B 0D",
|
||||||
|
"operations": [
|
||||||
|
{
|
||||||
|
"type": "ripRelative"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "add",
|
||||||
|
"value": 280
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "viewAngles",
|
"name": "viewAngles",
|
||||||
"module": "client.dll",
|
"module": "client.dll",
|
||||||
"pattern": "48 8B 0D ? ? ? ? 48 8B 01 48 FF 60 30",
|
"pattern": "48 8B 0D ? ? ? ? 48 8B 01 48 FF 60 30",
|
||||||
"relative": true,
|
"operations": [
|
||||||
"levels": 1,
|
{
|
||||||
"offset": 17680
|
"type": "ripRelative"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "dereference"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "add",
|
||||||
|
"value": 17680
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "viewMatrix",
|
"name": "viewMatrix",
|
||||||
"module": "client.dll",
|
"module": "client.dll",
|
||||||
"pattern": "48 8D 0D ? ? ? ? 48 C1 E0 06",
|
"pattern": "48 8D 0D ? ? ? ? 48 C1 E0 06",
|
||||||
"relative": true,
|
"operations": [
|
||||||
"levels": 0,
|
{
|
||||||
"offset": 0
|
"type": "ripRelative"
|
||||||
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
@ -4,49 +4,49 @@ public static class animationsystem_dll {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static class client_dll {
|
public static class client_dll {
|
||||||
public const nint LegacyGameUI001 = 0x88D1A0;
|
public const nint LegacyGameUI001 = 0x88D0B0;
|
||||||
public const nint Source2ClientUI001 = 0x87BB90;
|
public const nint Source2ClientUI001 = 0x87BAA0;
|
||||||
public const nint Source2ClientPrediction001 = 0x79B2D0;
|
public const nint Source2ClientPrediction001 = 0x79B240;
|
||||||
public const nint ClientToolsInfo_001 = 0x7270E0;
|
public const nint ClientToolsInfo_001 = 0x727050;
|
||||||
public const nint Source2Client002 = 0x727100;
|
public const nint Source2Client002 = 0x727070;
|
||||||
public const nint GameClientExports001 = 0x7270F0;
|
public const nint GameClientExports001 = 0x727060;
|
||||||
public const nint EmptyWorldService001_Client = 0x48A9C0;
|
public const nint EmptyWorldService001_Client = 0x48A900;
|
||||||
public const nint Source2ClientConfig001 = 0x471D50;
|
public const nint Source2ClientConfig001 = 0x471C90;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class engine2_dll {
|
public static class engine2_dll {
|
||||||
public const nint SimpleEngineLoopService_001 = 0x1E44F0;
|
public const nint SimpleEngineLoopService_001 = 0x1E47A0;
|
||||||
public const nint ClientServerEngineLoopService_001 = 0x1DA1C0;
|
public const nint ClientServerEngineLoopService_001 = 0x1DA470;
|
||||||
public const nint KeyValueCache001 = 0x1D6560;
|
public const nint KeyValueCache001 = 0x1D6810;
|
||||||
public const nint HostStateMgr001 = 0x1D3FA0;
|
public const nint HostStateMgr001 = 0x1D4220;
|
||||||
public const nint GameEventSystemServerV001 = 0x1CF3C0;
|
public const nint GameEventSystemServerV001 = 0x1CF640;
|
||||||
public const nint GameEventSystemClientV001 = 0x1CF3B0;
|
public const nint GameEventSystemClientV001 = 0x1CF630;
|
||||||
public const nint EngineServiceMgr001 = 0x1CACD0;
|
public const nint EngineServiceMgr001 = 0x1CAF50;
|
||||||
public const nint VProfService_001 = 0x1B8C60;
|
public const nint VProfService_001 = 0x1B8CE0;
|
||||||
public const nint ToolService_001 = 0x1B79C0;
|
public const nint ToolService_001 = 0x1B7A40;
|
||||||
public const nint StatsService_001 = 0x1B2C40;
|
public const nint StatsService_001 = 0x1B2CC0;
|
||||||
public const nint SplitScreenService_001 = 0x1AFEB0;
|
public const nint SplitScreenService_001 = 0x1AFF30;
|
||||||
public const nint SoundService_001 = 0x1AAA00;
|
public const nint SoundService_001 = 0x1AAA80;
|
||||||
public const nint ScreenshotService001 = 0x1A68D0;
|
public const nint ScreenshotService001 = 0x1A6950;
|
||||||
public const nint RenderService_001 = 0x1A3C30;
|
public const nint RenderService_001 = 0x1A3CB0;
|
||||||
public const nint NetworkService_001 = 0x1A3740;
|
public const nint NetworkService_001 = 0x1A37C0;
|
||||||
public const nint NetworkServerService_001 = 0x19E7E0;
|
public const nint NetworkServerService_001 = 0x19E860;
|
||||||
public const nint NetworkP2PService_001 = 0x19A1F0;
|
public const nint NetworkP2PService_001 = 0x19A270;
|
||||||
public const nint NetworkClientService_001 = 0x193E20;
|
public const nint NetworkClientService_001 = 0x193EA0;
|
||||||
public const nint MapListService_001 = 0x18CE60;
|
public const nint MapListService_001 = 0x18CEE0;
|
||||||
public const nint InputService_001 = 0x17ABD0;
|
public const nint InputService_001 = 0x17AC50;
|
||||||
public const nint GameUIService_001 = 0x175690;
|
public const nint GameUIService_001 = 0x175710;
|
||||||
public const nint GameResourceServiceServerV001 = 0x1733F0;
|
public const nint GameResourceServiceServerV001 = 0x173470;
|
||||||
public const nint GameResourceServiceClientV001 = 0x1733E0;
|
public const nint GameResourceServiceClientV001 = 0x173460;
|
||||||
public const nint BugService001 = 0x16C410;
|
public const nint BugService001 = 0x16C490;
|
||||||
public const nint BenchmarkService001 = 0x16ABE0;
|
public const nint BenchmarkService001 = 0x16AC60;
|
||||||
public const nint VENGINE_GAMEUIFUNCS_VERSION005 = 0x118300;
|
public const nint VENGINE_GAMEUIFUNCS_VERSION005 = 0x118380;
|
||||||
public const nint EngineGameUI001 = 0x1175C0;
|
public const nint EngineGameUI001 = 0x117640;
|
||||||
public const nint INETSUPPORT_001 = 0xE6DA0;
|
public const nint INETSUPPORT_001 = 0xE6E20;
|
||||||
public const nint Source2EngineToServerStringTable001 = 0xA1820;
|
public const nint Source2EngineToServerStringTable001 = 0xA18A0;
|
||||||
public const nint Source2EngineToServer001 = 0x8B650;
|
public const nint Source2EngineToServer001 = 0x8B6D0;
|
||||||
public const nint Source2EngineToClientStringTable001 = 0x84050;
|
public const nint Source2EngineToClientStringTable001 = 0x840D0;
|
||||||
public const nint Source2EngineToClient001 = 0x5A6B0;
|
public const nint Source2EngineToClient001 = 0x5A730;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class filesystem_stdio_dll {
|
public static class filesystem_stdio_dll {
|
||||||
@ -100,7 +100,7 @@ public static class navsystem_dll {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static class networksystem_dll {
|
public static class networksystem_dll {
|
||||||
public const nint SerializedEntitiesVersion001 = 0xD29C0;
|
public const nint SerializedEntitiesVersion001 = 0xD2A60;
|
||||||
public const nint NetworkSystemVersion001 = 0xBCD00;
|
public const nint NetworkSystemVersion001 = 0xBCD00;
|
||||||
public const nint NetworkMessagesVersion001 = 0x9CD30;
|
public const nint NetworkMessagesVersion001 = 0x9CD30;
|
||||||
public const nint FlattenedSerializersVersion001 = 0x7C4E0;
|
public const nint FlattenedSerializersVersion001 = 0x7C4E0;
|
||||||
@ -127,9 +127,9 @@ public static class pulse_system_dll {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static class rendersystemdx11_dll {
|
public static class rendersystemdx11_dll {
|
||||||
public const nint RenderUtils_001 = 0x53440;
|
public const nint RenderUtils_001 = 0x53470;
|
||||||
public const nint VRenderDeviceMgrBackdoor001 = 0x4AAA0;
|
public const nint VRenderDeviceMgrBackdoor001 = 0x4AAD0;
|
||||||
public const nint RenderDeviceMgr001 = 0x4AA90;
|
public const nint RenderDeviceMgr001 = 0x4AAC0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class resourcesystem_dll {
|
public static class resourcesystem_dll {
|
||||||
@ -142,9 +142,9 @@ public static class scenefilecache_dll {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static class scenesystem_dll {
|
public static class scenesystem_dll {
|
||||||
public const nint SceneUtils_001 = 0x13D610;
|
public const nint SceneUtils_001 = 0x13D620;
|
||||||
public const nint SceneSystem_002 = 0xCAAB0;
|
public const nint SceneSystem_002 = 0xCAAC0;
|
||||||
public const nint RenderingPipelines_001 = 0x8EA10;
|
public const nint RenderingPipelines_001 = 0x8EA20;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class schemasystem_dll {
|
public static class schemasystem_dll {
|
||||||
@ -152,16 +152,16 @@ public static class schemasystem_dll {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static class server_dll {
|
public static class server_dll {
|
||||||
public const nint NavGameTest001 = 0xA2B310;
|
public const nint NavGameTest001 = 0xA2B2F0;
|
||||||
public const nint ServerToolsInfo_001 = 0x82F8C0;
|
public const nint ServerToolsInfo_001 = 0x82F8A0;
|
||||||
public const nint Source2GameClients001 = 0x82F8D0;
|
public const nint Source2GameClients001 = 0x82F8B0;
|
||||||
public const nint Source2GameEntities001 = 0x82F8E0;
|
public const nint Source2GameEntities001 = 0x82F8C0;
|
||||||
public const nint Source2Server001 = 0x82F8F0;
|
public const nint Source2Server001 = 0x82F8D0;
|
||||||
public const nint EmptyWorldService001_Server = 0x584640;
|
public const nint EmptyWorldService001_Server = 0x584620;
|
||||||
public const nint Source2ServerConfig001 = 0x564650;
|
public const nint Source2ServerConfig001 = 0x564630;
|
||||||
public const nint EntitySubclassUtilsV001 = 0x2C69A0;
|
public const nint EntitySubclassUtilsV001 = 0x2C6980;
|
||||||
public const nint customnavsystem001 = 0x243420;
|
public const nint customnavsystem001 = 0x243400;
|
||||||
public const nint Source2GameDirector001 = 0x13E9C0;
|
public const nint Source2GameDirector001 = 0x13E9A0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class soundsystem_dll {
|
public static class soundsystem_dll {
|
||||||
|
@ -8,49 +8,49 @@ namespace animationsystem_dll {
|
|||||||
}
|
}
|
||||||
|
|
||||||
namespace client_dll {
|
namespace client_dll {
|
||||||
constexpr std::ptrdiff_t LegacyGameUI001 = 0x88D1A0;
|
constexpr std::ptrdiff_t LegacyGameUI001 = 0x88D0B0;
|
||||||
constexpr std::ptrdiff_t Source2ClientUI001 = 0x87BB90;
|
constexpr std::ptrdiff_t Source2ClientUI001 = 0x87BAA0;
|
||||||
constexpr std::ptrdiff_t Source2ClientPrediction001 = 0x79B2D0;
|
constexpr std::ptrdiff_t Source2ClientPrediction001 = 0x79B240;
|
||||||
constexpr std::ptrdiff_t ClientToolsInfo_001 = 0x7270E0;
|
constexpr std::ptrdiff_t ClientToolsInfo_001 = 0x727050;
|
||||||
constexpr std::ptrdiff_t Source2Client002 = 0x727100;
|
constexpr std::ptrdiff_t Source2Client002 = 0x727070;
|
||||||
constexpr std::ptrdiff_t GameClientExports001 = 0x7270F0;
|
constexpr std::ptrdiff_t GameClientExports001 = 0x727060;
|
||||||
constexpr std::ptrdiff_t EmptyWorldService001_Client = 0x48A9C0;
|
constexpr std::ptrdiff_t EmptyWorldService001_Client = 0x48A900;
|
||||||
constexpr std::ptrdiff_t Source2ClientConfig001 = 0x471D50;
|
constexpr std::ptrdiff_t Source2ClientConfig001 = 0x471C90;
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace engine2_dll {
|
namespace engine2_dll {
|
||||||
constexpr std::ptrdiff_t SimpleEngineLoopService_001 = 0x1E44F0;
|
constexpr std::ptrdiff_t SimpleEngineLoopService_001 = 0x1E47A0;
|
||||||
constexpr std::ptrdiff_t ClientServerEngineLoopService_001 = 0x1DA1C0;
|
constexpr std::ptrdiff_t ClientServerEngineLoopService_001 = 0x1DA470;
|
||||||
constexpr std::ptrdiff_t KeyValueCache001 = 0x1D6560;
|
constexpr std::ptrdiff_t KeyValueCache001 = 0x1D6810;
|
||||||
constexpr std::ptrdiff_t HostStateMgr001 = 0x1D3FA0;
|
constexpr std::ptrdiff_t HostStateMgr001 = 0x1D4220;
|
||||||
constexpr std::ptrdiff_t GameEventSystemServerV001 = 0x1CF3C0;
|
constexpr std::ptrdiff_t GameEventSystemServerV001 = 0x1CF640;
|
||||||
constexpr std::ptrdiff_t GameEventSystemClientV001 = 0x1CF3B0;
|
constexpr std::ptrdiff_t GameEventSystemClientV001 = 0x1CF630;
|
||||||
constexpr std::ptrdiff_t EngineServiceMgr001 = 0x1CACD0;
|
constexpr std::ptrdiff_t EngineServiceMgr001 = 0x1CAF50;
|
||||||
constexpr std::ptrdiff_t VProfService_001 = 0x1B8C60;
|
constexpr std::ptrdiff_t VProfService_001 = 0x1B8CE0;
|
||||||
constexpr std::ptrdiff_t ToolService_001 = 0x1B79C0;
|
constexpr std::ptrdiff_t ToolService_001 = 0x1B7A40;
|
||||||
constexpr std::ptrdiff_t StatsService_001 = 0x1B2C40;
|
constexpr std::ptrdiff_t StatsService_001 = 0x1B2CC0;
|
||||||
constexpr std::ptrdiff_t SplitScreenService_001 = 0x1AFEB0;
|
constexpr std::ptrdiff_t SplitScreenService_001 = 0x1AFF30;
|
||||||
constexpr std::ptrdiff_t SoundService_001 = 0x1AAA00;
|
constexpr std::ptrdiff_t SoundService_001 = 0x1AAA80;
|
||||||
constexpr std::ptrdiff_t ScreenshotService001 = 0x1A68D0;
|
constexpr std::ptrdiff_t ScreenshotService001 = 0x1A6950;
|
||||||
constexpr std::ptrdiff_t RenderService_001 = 0x1A3C30;
|
constexpr std::ptrdiff_t RenderService_001 = 0x1A3CB0;
|
||||||
constexpr std::ptrdiff_t NetworkService_001 = 0x1A3740;
|
constexpr std::ptrdiff_t NetworkService_001 = 0x1A37C0;
|
||||||
constexpr std::ptrdiff_t NetworkServerService_001 = 0x19E7E0;
|
constexpr std::ptrdiff_t NetworkServerService_001 = 0x19E860;
|
||||||
constexpr std::ptrdiff_t NetworkP2PService_001 = 0x19A1F0;
|
constexpr std::ptrdiff_t NetworkP2PService_001 = 0x19A270;
|
||||||
constexpr std::ptrdiff_t NetworkClientService_001 = 0x193E20;
|
constexpr std::ptrdiff_t NetworkClientService_001 = 0x193EA0;
|
||||||
constexpr std::ptrdiff_t MapListService_001 = 0x18CE60;
|
constexpr std::ptrdiff_t MapListService_001 = 0x18CEE0;
|
||||||
constexpr std::ptrdiff_t InputService_001 = 0x17ABD0;
|
constexpr std::ptrdiff_t InputService_001 = 0x17AC50;
|
||||||
constexpr std::ptrdiff_t GameUIService_001 = 0x175690;
|
constexpr std::ptrdiff_t GameUIService_001 = 0x175710;
|
||||||
constexpr std::ptrdiff_t GameResourceServiceServerV001 = 0x1733F0;
|
constexpr std::ptrdiff_t GameResourceServiceServerV001 = 0x173470;
|
||||||
constexpr std::ptrdiff_t GameResourceServiceClientV001 = 0x1733E0;
|
constexpr std::ptrdiff_t GameResourceServiceClientV001 = 0x173460;
|
||||||
constexpr std::ptrdiff_t BugService001 = 0x16C410;
|
constexpr std::ptrdiff_t BugService001 = 0x16C490;
|
||||||
constexpr std::ptrdiff_t BenchmarkService001 = 0x16ABE0;
|
constexpr std::ptrdiff_t BenchmarkService001 = 0x16AC60;
|
||||||
constexpr std::ptrdiff_t VENGINE_GAMEUIFUNCS_VERSION005 = 0x118300;
|
constexpr std::ptrdiff_t VENGINE_GAMEUIFUNCS_VERSION005 = 0x118380;
|
||||||
constexpr std::ptrdiff_t EngineGameUI001 = 0x1175C0;
|
constexpr std::ptrdiff_t EngineGameUI001 = 0x117640;
|
||||||
constexpr std::ptrdiff_t INETSUPPORT_001 = 0xE6DA0;
|
constexpr std::ptrdiff_t INETSUPPORT_001 = 0xE6E20;
|
||||||
constexpr std::ptrdiff_t Source2EngineToServerStringTable001 = 0xA1820;
|
constexpr std::ptrdiff_t Source2EngineToServerStringTable001 = 0xA18A0;
|
||||||
constexpr std::ptrdiff_t Source2EngineToServer001 = 0x8B650;
|
constexpr std::ptrdiff_t Source2EngineToServer001 = 0x8B6D0;
|
||||||
constexpr std::ptrdiff_t Source2EngineToClientStringTable001 = 0x84050;
|
constexpr std::ptrdiff_t Source2EngineToClientStringTable001 = 0x840D0;
|
||||||
constexpr std::ptrdiff_t Source2EngineToClient001 = 0x5A6B0;
|
constexpr std::ptrdiff_t Source2EngineToClient001 = 0x5A730;
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace filesystem_stdio_dll {
|
namespace filesystem_stdio_dll {
|
||||||
@ -104,7 +104,7 @@ namespace navsystem_dll {
|
|||||||
}
|
}
|
||||||
|
|
||||||
namespace networksystem_dll {
|
namespace networksystem_dll {
|
||||||
constexpr std::ptrdiff_t SerializedEntitiesVersion001 = 0xD29C0;
|
constexpr std::ptrdiff_t SerializedEntitiesVersion001 = 0xD2A60;
|
||||||
constexpr std::ptrdiff_t NetworkSystemVersion001 = 0xBCD00;
|
constexpr std::ptrdiff_t NetworkSystemVersion001 = 0xBCD00;
|
||||||
constexpr std::ptrdiff_t NetworkMessagesVersion001 = 0x9CD30;
|
constexpr std::ptrdiff_t NetworkMessagesVersion001 = 0x9CD30;
|
||||||
constexpr std::ptrdiff_t FlattenedSerializersVersion001 = 0x7C4E0;
|
constexpr std::ptrdiff_t FlattenedSerializersVersion001 = 0x7C4E0;
|
||||||
@ -131,9 +131,9 @@ namespace pulse_system_dll {
|
|||||||
}
|
}
|
||||||
|
|
||||||
namespace rendersystemdx11_dll {
|
namespace rendersystemdx11_dll {
|
||||||
constexpr std::ptrdiff_t RenderUtils_001 = 0x53440;
|
constexpr std::ptrdiff_t RenderUtils_001 = 0x53470;
|
||||||
constexpr std::ptrdiff_t VRenderDeviceMgrBackdoor001 = 0x4AAA0;
|
constexpr std::ptrdiff_t VRenderDeviceMgrBackdoor001 = 0x4AAD0;
|
||||||
constexpr std::ptrdiff_t RenderDeviceMgr001 = 0x4AA90;
|
constexpr std::ptrdiff_t RenderDeviceMgr001 = 0x4AAC0;
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace resourcesystem_dll {
|
namespace resourcesystem_dll {
|
||||||
@ -146,9 +146,9 @@ namespace scenefilecache_dll {
|
|||||||
}
|
}
|
||||||
|
|
||||||
namespace scenesystem_dll {
|
namespace scenesystem_dll {
|
||||||
constexpr std::ptrdiff_t SceneUtils_001 = 0x13D610;
|
constexpr std::ptrdiff_t SceneUtils_001 = 0x13D620;
|
||||||
constexpr std::ptrdiff_t SceneSystem_002 = 0xCAAB0;
|
constexpr std::ptrdiff_t SceneSystem_002 = 0xCAAC0;
|
||||||
constexpr std::ptrdiff_t RenderingPipelines_001 = 0x8EA10;
|
constexpr std::ptrdiff_t RenderingPipelines_001 = 0x8EA20;
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace schemasystem_dll {
|
namespace schemasystem_dll {
|
||||||
@ -156,16 +156,16 @@ namespace schemasystem_dll {
|
|||||||
}
|
}
|
||||||
|
|
||||||
namespace server_dll {
|
namespace server_dll {
|
||||||
constexpr std::ptrdiff_t NavGameTest001 = 0xA2B310;
|
constexpr std::ptrdiff_t NavGameTest001 = 0xA2B2F0;
|
||||||
constexpr std::ptrdiff_t ServerToolsInfo_001 = 0x82F8C0;
|
constexpr std::ptrdiff_t ServerToolsInfo_001 = 0x82F8A0;
|
||||||
constexpr std::ptrdiff_t Source2GameClients001 = 0x82F8D0;
|
constexpr std::ptrdiff_t Source2GameClients001 = 0x82F8B0;
|
||||||
constexpr std::ptrdiff_t Source2GameEntities001 = 0x82F8E0;
|
constexpr std::ptrdiff_t Source2GameEntities001 = 0x82F8C0;
|
||||||
constexpr std::ptrdiff_t Source2Server001 = 0x82F8F0;
|
constexpr std::ptrdiff_t Source2Server001 = 0x82F8D0;
|
||||||
constexpr std::ptrdiff_t EmptyWorldService001_Server = 0x584640;
|
constexpr std::ptrdiff_t EmptyWorldService001_Server = 0x584620;
|
||||||
constexpr std::ptrdiff_t Source2ServerConfig001 = 0x564650;
|
constexpr std::ptrdiff_t Source2ServerConfig001 = 0x564630;
|
||||||
constexpr std::ptrdiff_t EntitySubclassUtilsV001 = 0x2C69A0;
|
constexpr std::ptrdiff_t EntitySubclassUtilsV001 = 0x2C6980;
|
||||||
constexpr std::ptrdiff_t customnavsystem001 = 0x243420;
|
constexpr std::ptrdiff_t customnavsystem001 = 0x243400;
|
||||||
constexpr std::ptrdiff_t Source2GameDirector001 = 0x13E9C0;
|
constexpr std::ptrdiff_t Source2GameDirector001 = 0x13E9A0;
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace soundsystem_dll {
|
namespace soundsystem_dll {
|
||||||
|
@ -4,48 +4,48 @@
|
|||||||
"AnimationSystem_001": 389232
|
"AnimationSystem_001": 389232
|
||||||
},
|
},
|
||||||
"client_dll": {
|
"client_dll": {
|
||||||
"ClientToolsInfo_001": 7500000,
|
"ClientToolsInfo_001": 7499856,
|
||||||
"EmptyWorldService001_Client": 4762048,
|
"EmptyWorldService001_Client": 4761856,
|
||||||
"GameClientExports001": 7500016,
|
"GameClientExports001": 7499872,
|
||||||
"LegacyGameUI001": 8966560,
|
"LegacyGameUI001": 8966320,
|
||||||
"Source2Client002": 7500032,
|
"Source2Client002": 7499888,
|
||||||
"Source2ClientConfig001": 4660560,
|
"Source2ClientConfig001": 4660368,
|
||||||
"Source2ClientPrediction001": 7975632,
|
"Source2ClientPrediction001": 7975488,
|
||||||
"Source2ClientUI001": 8895376
|
"Source2ClientUI001": 8895136
|
||||||
},
|
},
|
||||||
"engine2_dll": {
|
"engine2_dll": {
|
||||||
"BenchmarkService001": 1485792,
|
"BenchmarkService001": 1485920,
|
||||||
"BugService001": 1491984,
|
"BugService001": 1492112,
|
||||||
"ClientServerEngineLoopService_001": 1941952,
|
"ClientServerEngineLoopService_001": 1942640,
|
||||||
"EngineGameUI001": 1144256,
|
"EngineGameUI001": 1144384,
|
||||||
"EngineServiceMgr001": 1879248,
|
"EngineServiceMgr001": 1879888,
|
||||||
"GameEventSystemClientV001": 1897392,
|
"GameEventSystemClientV001": 1898032,
|
||||||
"GameEventSystemServerV001": 1897408,
|
"GameEventSystemServerV001": 1898048,
|
||||||
"GameResourceServiceClientV001": 1520608,
|
"GameResourceServiceClientV001": 1520736,
|
||||||
"GameResourceServiceServerV001": 1520624,
|
"GameResourceServiceServerV001": 1520752,
|
||||||
"GameUIService_001": 1529488,
|
"GameUIService_001": 1529616,
|
||||||
"HostStateMgr001": 1916832,
|
"HostStateMgr001": 1917472,
|
||||||
"INETSUPPORT_001": 945568,
|
"INETSUPPORT_001": 945696,
|
||||||
"InputService_001": 1551312,
|
"InputService_001": 1551440,
|
||||||
"KeyValueCache001": 1926496,
|
"KeyValueCache001": 1927184,
|
||||||
"MapListService_001": 1625696,
|
"MapListService_001": 1625824,
|
||||||
"NetworkClientService_001": 1654304,
|
"NetworkClientService_001": 1654432,
|
||||||
"NetworkP2PService_001": 1679856,
|
"NetworkP2PService_001": 1679984,
|
||||||
"NetworkServerService_001": 1697760,
|
"NetworkServerService_001": 1697888,
|
||||||
"NetworkService_001": 1718080,
|
"NetworkService_001": 1718208,
|
||||||
"RenderService_001": 1719344,
|
"RenderService_001": 1719472,
|
||||||
"ScreenshotService001": 1730768,
|
"ScreenshotService001": 1730896,
|
||||||
"SimpleEngineLoopService_001": 1983728,
|
"SimpleEngineLoopService_001": 1984416,
|
||||||
"SoundService_001": 1747456,
|
"SoundService_001": 1747584,
|
||||||
"Source2EngineToClient001": 370352,
|
"Source2EngineToClient001": 370480,
|
||||||
"Source2EngineToClientStringTable001": 540752,
|
"Source2EngineToClientStringTable001": 540880,
|
||||||
"Source2EngineToServer001": 570960,
|
"Source2EngineToServer001": 571088,
|
||||||
"Source2EngineToServerStringTable001": 661536,
|
"Source2EngineToServerStringTable001": 661664,
|
||||||
"SplitScreenService_001": 1769136,
|
"SplitScreenService_001": 1769264,
|
||||||
"StatsService_001": 1780800,
|
"StatsService_001": 1780928,
|
||||||
"ToolService_001": 1800640,
|
"ToolService_001": 1800768,
|
||||||
"VENGINE_GAMEUIFUNCS_VERSION005": 1147648,
|
"VENGINE_GAMEUIFUNCS_VERSION005": 1147776,
|
||||||
"VProfService_001": 1805408
|
"VProfService_001": 1805536
|
||||||
},
|
},
|
||||||
"filesystem_stdio_dll": {
|
"filesystem_stdio_dll": {
|
||||||
"VAsyncFileSystem2_001": 421184,
|
"VAsyncFileSystem2_001": 421184,
|
||||||
@ -92,7 +92,7 @@
|
|||||||
"FlattenedSerializersVersion001": 509152,
|
"FlattenedSerializersVersion001": 509152,
|
||||||
"NetworkMessagesVersion001": 642352,
|
"NetworkMessagesVersion001": 642352,
|
||||||
"NetworkSystemVersion001": 773376,
|
"NetworkSystemVersion001": 773376,
|
||||||
"SerializedEntitiesVersion001": 862656
|
"SerializedEntitiesVersion001": 862816
|
||||||
},
|
},
|
||||||
"panorama_dll": {
|
"panorama_dll": {
|
||||||
"PanoramaUIEngine001": 386640
|
"PanoramaUIEngine001": 386640
|
||||||
@ -110,9 +110,9 @@
|
|||||||
"IPulseSystem_001": 23072
|
"IPulseSystem_001": 23072
|
||||||
},
|
},
|
||||||
"rendersystemdx11_dll": {
|
"rendersystemdx11_dll": {
|
||||||
"RenderDeviceMgr001": 305808,
|
"RenderDeviceMgr001": 305856,
|
||||||
"RenderUtils_001": 341056,
|
"RenderUtils_001": 341104,
|
||||||
"VRenderDeviceMgrBackdoor001": 305824
|
"VRenderDeviceMgrBackdoor001": 305872
|
||||||
},
|
},
|
||||||
"resourcesystem_dll": {
|
"resourcesystem_dll": {
|
||||||
"ResourceSystem013": 67248
|
"ResourceSystem013": 67248
|
||||||
@ -122,24 +122,24 @@
|
|||||||
"SceneFileCache002": 26848
|
"SceneFileCache002": 26848
|
||||||
},
|
},
|
||||||
"scenesystem_dll": {
|
"scenesystem_dll": {
|
||||||
"RenderingPipelines_001": 584208,
|
"RenderingPipelines_001": 584224,
|
||||||
"SceneSystem_002": 830128,
|
"SceneSystem_002": 830144,
|
||||||
"SceneUtils_001": 1299984
|
"SceneUtils_001": 1300000
|
||||||
},
|
},
|
||||||
"schemasystem_dll": {
|
"schemasystem_dll": {
|
||||||
"SchemaSystem_001": 43072
|
"SchemaSystem_001": 43072
|
||||||
},
|
},
|
||||||
"server_dll": {
|
"server_dll": {
|
||||||
"EmptyWorldService001_Server": 5785152,
|
"EmptyWorldService001_Server": 5785120,
|
||||||
"EntitySubclassUtilsV001": 2910624,
|
"EntitySubclassUtilsV001": 2910592,
|
||||||
"NavGameTest001": 10662672,
|
"NavGameTest001": 10662640,
|
||||||
"ServerToolsInfo_001": 8583360,
|
"ServerToolsInfo_001": 8583328,
|
||||||
"Source2GameClients001": 8583376,
|
"Source2GameClients001": 8583344,
|
||||||
"Source2GameDirector001": 1305024,
|
"Source2GameDirector001": 1304992,
|
||||||
"Source2GameEntities001": 8583392,
|
"Source2GameEntities001": 8583360,
|
||||||
"Source2Server001": 8583408,
|
"Source2Server001": 8583376,
|
||||||
"Source2ServerConfig001": 5654096,
|
"Source2ServerConfig001": 5654064,
|
||||||
"customnavsystem001": 2372640
|
"customnavsystem001": 2372608
|
||||||
},
|
},
|
||||||
"soundsystem_dll": {
|
"soundsystem_dll": {
|
||||||
"SoundOpSystem001": 1401040,
|
"SoundOpSystem001": 1401040,
|
||||||
|
@ -6,49 +6,49 @@ pub mod animationsystem_dll {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub mod client_dll {
|
pub mod client_dll {
|
||||||
pub const LegacyGameUI001: usize = 0x88D1A0;
|
pub const LegacyGameUI001: usize = 0x88D0B0;
|
||||||
pub const Source2ClientUI001: usize = 0x87BB90;
|
pub const Source2ClientUI001: usize = 0x87BAA0;
|
||||||
pub const Source2ClientPrediction001: usize = 0x79B2D0;
|
pub const Source2ClientPrediction001: usize = 0x79B240;
|
||||||
pub const ClientToolsInfo_001: usize = 0x7270E0;
|
pub const ClientToolsInfo_001: usize = 0x727050;
|
||||||
pub const Source2Client002: usize = 0x727100;
|
pub const Source2Client002: usize = 0x727070;
|
||||||
pub const GameClientExports001: usize = 0x7270F0;
|
pub const GameClientExports001: usize = 0x727060;
|
||||||
pub const EmptyWorldService001_Client: usize = 0x48A9C0;
|
pub const EmptyWorldService001_Client: usize = 0x48A900;
|
||||||
pub const Source2ClientConfig001: usize = 0x471D50;
|
pub const Source2ClientConfig001: usize = 0x471C90;
|
||||||
}
|
}
|
||||||
|
|
||||||
pub mod engine2_dll {
|
pub mod engine2_dll {
|
||||||
pub const SimpleEngineLoopService_001: usize = 0x1E44F0;
|
pub const SimpleEngineLoopService_001: usize = 0x1E47A0;
|
||||||
pub const ClientServerEngineLoopService_001: usize = 0x1DA1C0;
|
pub const ClientServerEngineLoopService_001: usize = 0x1DA470;
|
||||||
pub const KeyValueCache001: usize = 0x1D6560;
|
pub const KeyValueCache001: usize = 0x1D6810;
|
||||||
pub const HostStateMgr001: usize = 0x1D3FA0;
|
pub const HostStateMgr001: usize = 0x1D4220;
|
||||||
pub const GameEventSystemServerV001: usize = 0x1CF3C0;
|
pub const GameEventSystemServerV001: usize = 0x1CF640;
|
||||||
pub const GameEventSystemClientV001: usize = 0x1CF3B0;
|
pub const GameEventSystemClientV001: usize = 0x1CF630;
|
||||||
pub const EngineServiceMgr001: usize = 0x1CACD0;
|
pub const EngineServiceMgr001: usize = 0x1CAF50;
|
||||||
pub const VProfService_001: usize = 0x1B8C60;
|
pub const VProfService_001: usize = 0x1B8CE0;
|
||||||
pub const ToolService_001: usize = 0x1B79C0;
|
pub const ToolService_001: usize = 0x1B7A40;
|
||||||
pub const StatsService_001: usize = 0x1B2C40;
|
pub const StatsService_001: usize = 0x1B2CC0;
|
||||||
pub const SplitScreenService_001: usize = 0x1AFEB0;
|
pub const SplitScreenService_001: usize = 0x1AFF30;
|
||||||
pub const SoundService_001: usize = 0x1AAA00;
|
pub const SoundService_001: usize = 0x1AAA80;
|
||||||
pub const ScreenshotService001: usize = 0x1A68D0;
|
pub const ScreenshotService001: usize = 0x1A6950;
|
||||||
pub const RenderService_001: usize = 0x1A3C30;
|
pub const RenderService_001: usize = 0x1A3CB0;
|
||||||
pub const NetworkService_001: usize = 0x1A3740;
|
pub const NetworkService_001: usize = 0x1A37C0;
|
||||||
pub const NetworkServerService_001: usize = 0x19E7E0;
|
pub const NetworkServerService_001: usize = 0x19E860;
|
||||||
pub const NetworkP2PService_001: usize = 0x19A1F0;
|
pub const NetworkP2PService_001: usize = 0x19A270;
|
||||||
pub const NetworkClientService_001: usize = 0x193E20;
|
pub const NetworkClientService_001: usize = 0x193EA0;
|
||||||
pub const MapListService_001: usize = 0x18CE60;
|
pub const MapListService_001: usize = 0x18CEE0;
|
||||||
pub const InputService_001: usize = 0x17ABD0;
|
pub const InputService_001: usize = 0x17AC50;
|
||||||
pub const GameUIService_001: usize = 0x175690;
|
pub const GameUIService_001: usize = 0x175710;
|
||||||
pub const GameResourceServiceServerV001: usize = 0x1733F0;
|
pub const GameResourceServiceServerV001: usize = 0x173470;
|
||||||
pub const GameResourceServiceClientV001: usize = 0x1733E0;
|
pub const GameResourceServiceClientV001: usize = 0x173460;
|
||||||
pub const BugService001: usize = 0x16C410;
|
pub const BugService001: usize = 0x16C490;
|
||||||
pub const BenchmarkService001: usize = 0x16ABE0;
|
pub const BenchmarkService001: usize = 0x16AC60;
|
||||||
pub const VENGINE_GAMEUIFUNCS_VERSION005: usize = 0x118300;
|
pub const VENGINE_GAMEUIFUNCS_VERSION005: usize = 0x118380;
|
||||||
pub const EngineGameUI001: usize = 0x1175C0;
|
pub const EngineGameUI001: usize = 0x117640;
|
||||||
pub const INETSUPPORT_001: usize = 0xE6DA0;
|
pub const INETSUPPORT_001: usize = 0xE6E20;
|
||||||
pub const Source2EngineToServerStringTable001: usize = 0xA1820;
|
pub const Source2EngineToServerStringTable001: usize = 0xA18A0;
|
||||||
pub const Source2EngineToServer001: usize = 0x8B650;
|
pub const Source2EngineToServer001: usize = 0x8B6D0;
|
||||||
pub const Source2EngineToClientStringTable001: usize = 0x84050;
|
pub const Source2EngineToClientStringTable001: usize = 0x840D0;
|
||||||
pub const Source2EngineToClient001: usize = 0x5A6B0;
|
pub const Source2EngineToClient001: usize = 0x5A730;
|
||||||
}
|
}
|
||||||
|
|
||||||
pub mod filesystem_stdio_dll {
|
pub mod filesystem_stdio_dll {
|
||||||
@ -102,7 +102,7 @@ pub mod navsystem_dll {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub mod networksystem_dll {
|
pub mod networksystem_dll {
|
||||||
pub const SerializedEntitiesVersion001: usize = 0xD29C0;
|
pub const SerializedEntitiesVersion001: usize = 0xD2A60;
|
||||||
pub const NetworkSystemVersion001: usize = 0xBCD00;
|
pub const NetworkSystemVersion001: usize = 0xBCD00;
|
||||||
pub const NetworkMessagesVersion001: usize = 0x9CD30;
|
pub const NetworkMessagesVersion001: usize = 0x9CD30;
|
||||||
pub const FlattenedSerializersVersion001: usize = 0x7C4E0;
|
pub const FlattenedSerializersVersion001: usize = 0x7C4E0;
|
||||||
@ -129,9 +129,9 @@ pub mod pulse_system_dll {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub mod rendersystemdx11_dll {
|
pub mod rendersystemdx11_dll {
|
||||||
pub const RenderUtils_001: usize = 0x53440;
|
pub const RenderUtils_001: usize = 0x53470;
|
||||||
pub const VRenderDeviceMgrBackdoor001: usize = 0x4AAA0;
|
pub const VRenderDeviceMgrBackdoor001: usize = 0x4AAD0;
|
||||||
pub const RenderDeviceMgr001: usize = 0x4AA90;
|
pub const RenderDeviceMgr001: usize = 0x4AAC0;
|
||||||
}
|
}
|
||||||
|
|
||||||
pub mod resourcesystem_dll {
|
pub mod resourcesystem_dll {
|
||||||
@ -144,9 +144,9 @@ pub mod scenefilecache_dll {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub mod scenesystem_dll {
|
pub mod scenesystem_dll {
|
||||||
pub const SceneUtils_001: usize = 0x13D610;
|
pub const SceneUtils_001: usize = 0x13D620;
|
||||||
pub const SceneSystem_002: usize = 0xCAAB0;
|
pub const SceneSystem_002: usize = 0xCAAC0;
|
||||||
pub const RenderingPipelines_001: usize = 0x8EA10;
|
pub const RenderingPipelines_001: usize = 0x8EA20;
|
||||||
}
|
}
|
||||||
|
|
||||||
pub mod schemasystem_dll {
|
pub mod schemasystem_dll {
|
||||||
@ -154,16 +154,16 @@ pub mod schemasystem_dll {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub mod server_dll {
|
pub mod server_dll {
|
||||||
pub const NavGameTest001: usize = 0xA2B310;
|
pub const NavGameTest001: usize = 0xA2B2F0;
|
||||||
pub const ServerToolsInfo_001: usize = 0x82F8C0;
|
pub const ServerToolsInfo_001: usize = 0x82F8A0;
|
||||||
pub const Source2GameClients001: usize = 0x82F8D0;
|
pub const Source2GameClients001: usize = 0x82F8B0;
|
||||||
pub const Source2GameEntities001: usize = 0x82F8E0;
|
pub const Source2GameEntities001: usize = 0x82F8C0;
|
||||||
pub const Source2Server001: usize = 0x82F8F0;
|
pub const Source2Server001: usize = 0x82F8D0;
|
||||||
pub const EmptyWorldService001_Server: usize = 0x584640;
|
pub const EmptyWorldService001_Server: usize = 0x584620;
|
||||||
pub const Source2ServerConfig001: usize = 0x564650;
|
pub const Source2ServerConfig001: usize = 0x564630;
|
||||||
pub const EntitySubclassUtilsV001: usize = 0x2C69A0;
|
pub const EntitySubclassUtilsV001: usize = 0x2C6980;
|
||||||
pub const customnavsystem001: usize = 0x243420;
|
pub const customnavsystem001: usize = 0x243400;
|
||||||
pub const Source2GameDirector001: usize = 0x13E9C0;
|
pub const Source2GameDirector001: usize = 0x13E9A0;
|
||||||
}
|
}
|
||||||
|
|
||||||
pub mod soundsystem_dll {
|
pub mod soundsystem_dll {
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
public static class client_dll {
|
public static class client_dll {
|
||||||
public const nint entityList = 0x178C888;
|
public const nint entityList = 0x178C878;
|
||||||
public const nint globalVars = 0x168FCD8;
|
public const nint globalVars = 0x168FCC8;
|
||||||
public const nint localPlayerController = 0x17DB108;
|
public const nint localPlayerController = 0x17DB0F8;
|
||||||
public const nint viewAngles = 0x18D95A0;
|
public const nint localPlayerPawn = 0x1879BE8;
|
||||||
public const nint viewMatrix = 0x187A6E0;
|
public const nint viewAngles = 0x18D9590;
|
||||||
|
public const nint viewMatrix = 0x187A6D0;
|
||||||
}
|
}
|
@ -3,9 +3,10 @@
|
|||||||
#include <cstddef>
|
#include <cstddef>
|
||||||
|
|
||||||
namespace client_dll {
|
namespace client_dll {
|
||||||
constexpr std::ptrdiff_t entityList = 0x178C888;
|
constexpr std::ptrdiff_t entityList = 0x178C878;
|
||||||
constexpr std::ptrdiff_t globalVars = 0x168FCD8;
|
constexpr std::ptrdiff_t globalVars = 0x168FCC8;
|
||||||
constexpr std::ptrdiff_t localPlayerController = 0x17DB108;
|
constexpr std::ptrdiff_t localPlayerController = 0x17DB0F8;
|
||||||
constexpr std::ptrdiff_t viewAngles = 0x18D95A0;
|
constexpr std::ptrdiff_t localPlayerPawn = 0x1879BE8;
|
||||||
constexpr std::ptrdiff_t viewMatrix = 0x187A6E0;
|
constexpr std::ptrdiff_t viewAngles = 0x18D9590;
|
||||||
|
constexpr std::ptrdiff_t viewMatrix = 0x187A6D0;
|
||||||
}
|
}
|
@ -1,9 +1,10 @@
|
|||||||
{
|
{
|
||||||
"client_dll": {
|
"client_dll": {
|
||||||
"entityList": 24692872,
|
"entityList": 24692856,
|
||||||
"globalVars": 23657688,
|
"globalVars": 23657672,
|
||||||
"localPlayerController": 25014536,
|
"localPlayerController": 25014520,
|
||||||
"viewAngles": 26056096,
|
"localPlayerPawn": 25664488,
|
||||||
"viewMatrix": 25667296
|
"viewAngles": 26056080,
|
||||||
|
"viewMatrix": 25667280
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,9 +1,10 @@
|
|||||||
#![allow(non_snake_case, non_upper_case_globals)]
|
#![allow(non_snake_case, non_upper_case_globals)]
|
||||||
|
|
||||||
pub mod client_dll {
|
pub mod client_dll {
|
||||||
pub const entityList: usize = 0x178C888;
|
pub const entityList: usize = 0x178C878;
|
||||||
pub const globalVars: usize = 0x168FCD8;
|
pub const globalVars: usize = 0x168FCC8;
|
||||||
pub const localPlayerController: usize = 0x17DB108;
|
pub const localPlayerController: usize = 0x17DB0F8;
|
||||||
pub const viewAngles: usize = 0x18D95A0;
|
pub const localPlayerPawn: usize = 0x1879BE8;
|
||||||
pub const viewMatrix: usize = 0x187A6E0;
|
pub const viewAngles: usize = 0x18D9590;
|
||||||
|
pub const viewMatrix: usize = 0x187A6D0;
|
||||||
}
|
}
|
@ -1,13 +1,21 @@
|
|||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
|
#[derive(Debug, Deserialize, Serialize)]
|
||||||
|
#[serde(tag = "type", rename_all = "camelCase")]
|
||||||
|
pub enum Operation {
|
||||||
|
Add { value: usize },
|
||||||
|
Dereference { times: Option<u16> },
|
||||||
|
Jmp,
|
||||||
|
RipRelative,
|
||||||
|
Subtract { value: usize },
|
||||||
|
}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize)]
|
#[derive(Debug, Deserialize, Serialize)]
|
||||||
pub struct Signature {
|
pub struct Signature {
|
||||||
pub name: String,
|
pub name: String,
|
||||||
pub module: String,
|
pub module: String,
|
||||||
pub pattern: String,
|
pub pattern: String,
|
||||||
pub relative: bool,
|
pub operations: Vec<Operation>,
|
||||||
pub levels: i32,
|
|
||||||
pub offset: i32,
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize)]
|
#[derive(Debug, Deserialize, Serialize)]
|
||||||
|
@ -15,7 +15,7 @@ pub fn dump_interfaces(builders: &mut Vec<FileBuilderEnum>, process: &Process) -
|
|||||||
log::info!("Dumping interfaces in {}...", module_name);
|
log::info!("Dumping interfaces in {}...", module_name);
|
||||||
|
|
||||||
if let Some(create_interface_export) = module.export("CreateInterface") {
|
if let Some(create_interface_export) = module.export("CreateInterface") {
|
||||||
let create_interface_address = process.resolve_relative(create_interface_export.va)?;
|
let create_interface_address = process.resolve_rip(create_interface_export.va)?;
|
||||||
|
|
||||||
let mut interface_registry = process
|
let mut interface_registry = process
|
||||||
.read_memory::<usize>(create_interface_address)
|
.read_memory::<usize>(create_interface_address)
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
use std::fs::File;
|
use std::fs::File;
|
||||||
|
|
||||||
use crate::builder::FileBuilderEnum;
|
use crate::builder::FileBuilderEnum;
|
||||||
use crate::config::Config;
|
use crate::config::{Config, Operation};
|
||||||
use crate::error::{Error, Result};
|
use crate::error::{Error, Result};
|
||||||
use crate::remote::Process;
|
use crate::remote::Process;
|
||||||
|
|
||||||
@ -21,17 +21,27 @@ pub fn dump_offsets(builders: &mut Vec<FileBuilderEnum>, process: &Process) -> R
|
|||||||
|
|
||||||
let mut address = process.find_pattern(&signature.module, &signature.pattern)?;
|
let mut address = process.find_pattern(&signature.module, &signature.pattern)?;
|
||||||
|
|
||||||
if signature.relative {
|
for operation in signature.operations {
|
||||||
address = process.resolve_relative(address)?;
|
match operation {
|
||||||
|
Operation::Add { value } => {
|
||||||
|
address += value;
|
||||||
}
|
}
|
||||||
|
Operation::Dereference { times } => {
|
||||||
if signature.levels > 0 {
|
for _ in 0..times.unwrap_or(1) {
|
||||||
for _ in 0..signature.levels {
|
|
||||||
address = process.read_memory::<usize>(address)?;
|
address = process.read_memory::<usize>(address)?;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Operation::Jmp => {
|
||||||
address += signature.offset as usize;
|
address = process.resolve_jmp(address)?;
|
||||||
|
}
|
||||||
|
Operation::RipRelative => {
|
||||||
|
address = process.resolve_rip(address)?;
|
||||||
|
}
|
||||||
|
Operation::Subtract { value } => {
|
||||||
|
address -= value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
log::info!(
|
log::info!(
|
||||||
" -> Found '{}' @ {:#X} (RVA: {:#X})",
|
" -> Found '{}' @ {:#X} (RVA: {:#X})",
|
||||||
|
@ -175,7 +175,7 @@ impl Process {
|
|||||||
Ok((address + 0x5) + displacement as usize)
|
Ok((address + 0x5) + displacement as usize)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn resolve_relative(&self, address: usize) -> Result<usize> {
|
pub fn resolve_rip(&self, address: usize) -> Result<usize> {
|
||||||
let displacement = self.read_memory::<i32>(address + 0x3)?;
|
let displacement = self.read_memory::<i32>(address + 0x3)?;
|
||||||
|
|
||||||
Ok((address + 0x7) + displacement as usize)
|
Ok((address + 0x7) + displacement as usize)
|
||||||
|
@ -15,7 +15,7 @@ impl<'a> SchemaSystem<'a> {
|
|||||||
"48 8D 0D ? ? ? ? E9 ? ? ? ? CC CC CC CC 48 8D 0D ? ? ? ? E9 ? ? ? ? CC CC CC CC 48 83 EC 28"
|
"48 8D 0D ? ? ? ? E9 ? ? ? ? CC CC CC CC 48 8D 0D ? ? ? ? E9 ? ? ? ? CC CC CC CC 48 83 EC 28"
|
||||||
)?;
|
)?;
|
||||||
|
|
||||||
address = process.resolve_relative(address)?;
|
address = process.resolve_rip(address)?;
|
||||||
|
|
||||||
Ok(Self { process, address })
|
Ok(Self { process, address })
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user