Skip to content

Instantly share code, notes, and snippets.

@sbtoonz
Created November 14, 2022 01:41
Show Gist options
  • Save sbtoonz/9d5435e567da5aeb283b54d56c5ecc5d to your computer and use it in GitHub Desktop.
Save sbtoonz/9d5435e567da5aeb283b54d56c5ecc5d to your computer and use it in GitHub Desktop.
Signatures for ARK gworld and gobject and gname
bool InitSdk()
{
//E8 ? ? ? ? 48 89 1D ? ? ? ? 48 8B C3 48 8B 5C 24 ? 48 83 C4 28 C3 48 8B 5C 24 ?
auto GNamePat = FindPattern("E8 ? ? ? ? 48 89 1D ? ? ? ? 48 8B C3 48 8B 5C 24 ? 48 83 C4 28 C3 48 8B 5C 24 ?");
if (GNamePat == nullptr)return false;
auto GNamesAddress = *reinterpret_cast<uint32_t*>(GNamePat + 8);
uintptr_t GName = (DWORD64)(GNamePat + 12 + GNamesAddress);
FName::GNames = reinterpret_cast<CG::TNameEntryArray*>(GName);
auto GObjectPat = FindPattern("48 89 74 24 ? 48 89 74 24 ? E8 ? ? ? ? 48 8B 4C 24 ? F2 0F 10 05 ? ? ? ? F2 0F 11 01 8B 05 ? ? ? ? 89 41 08 0F B7 05 ? ? ? ?");
auto GObjectOffset = *reinterpret_cast<uint32_t*>(GObjectPat + 226); //array offset
uintptr_t GObject = (DWORD64)(GObjectPat + 246 + GObjectOffset); //function close
UObject::GObjects = reinterpret_cast<CG::TUObjectArray*>(GObject);
auto GWorldPat = FindPattern("48 89 4C 24 ? 48 81 EC ? ? ? ? E8 ? ? ? ? 48 8B 8C 24 ? ? ? ? E8 ? ? ? ? 48 8B 05 ? ? ? ? 48 8B 80 ? ? ? ? 48 83 78 ? ? 74 2C 48 8B 05 ?");
if (GWorldPat == nullptr) return false;
auto GWorldAddress = *reinterpret_cast<uint32_t*>(GWorldPat + 76); //object offset
uintptr_t GWorld = (DWORD64)(GWorldPat + 80 + GWorldAddress); //function close
UWorld::GWorld = reinterpret_cast<CG::UWorld**>(GWorld);
return true;
// return InitSdk(L"ShooterGame.exe", 0x49BD218);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment