Find `GEngine`
Closed this issue · 3 comments
rkr35 commented
Find `GEngine`
rkr35 commented
UnrealEngine\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp
{
FString GameEngineClassName;
GConfig->GetString(TEXT("/Script/Engine.Engine"), TEXT("GameEngine"), GameEngineClassName, GEngineIni);
UClass* EngineClass = StaticLoadClass( UEngine::StaticClass(), nullptr, *GameEngineClassName);
if (EngineClass == nullptr)
{
UE_LOG(LogInit, Fatal, TEXT("Failed to load Engine class '%s'."), *GameEngineClassName);
}
// must do this here so that the engine object that we create on the next line receives the correct property values
GEngine = NewObject<UEngine>(GetTransientPackage(), EngineClass);
check(GEngine);
GEngine->ParseCommandline();
UE_LOG(LogInit, Log, TEXT("Initializing Game Engine..."));
GEngine->Init(this);
UE_LOG(LogInit, Log, TEXT("Initializing Game Engine Completed"));
}
rkr35 commented
00007FF6391A95E0 | 48:85C0 | test rax,rax | if (EngineClass == nullptr)
00007FF6391A95E3 | 75 28 | jne fsd-win64-shipping.7FF6391A960D |
00007FF6391A95E5 | 3975 B8 | cmp dword ptr ss:[rbp-48],esi |
00007FF6391A95E8 | 4C:8D05 E13CD502 | lea r8,qword ptr ds:[7FF63BEFD2D0] | 00007FF63BEFD2D0:L"Failed to load Engine class '%s'."
00007FF6391A95EF | 4D:8BCD | mov r9,r13 |
00007FF6391A95F2 | 48:8D0D B721D502 | lea rcx,qword ptr ds:[7FF63BEFB7B0] | 00007FF63BEFB7B0:"Unknown"
00007FF6391A95F9 | 4C:0F454D B0 | cmovne r9,qword ptr ss:[rbp-50] |
00007FF6391A95FE | BA 020D0000 | mov edx,D02 |
00007FF6391A9603 | E8 6889A400 | call fsd-win64-shipping.7FF639BF1F70 |
00007FF6391A9608 | E8 03ACA400 | call fsd-win64-shipping.7FF639BF4210 |
00007FF6391A960D | 48:8975 30 | mov qword ptr ss:[rbp+30],rsi |
00007FF6391A9611 | E8 CA00C300 | call fsd-win64-shipping.7FF639DD96E0 | GetTransientPackage()
00007FF6391A9616 | 48:897424 30 | mov qword ptr ss:[rsp+30],rsi |
00007FF6391A961B | 48:8BC8 | mov rcx,rax |
00007FF6391A961E | 40:887424 28 | mov byte ptr ss:[rsp+28],sil |
00007FF6391A9623 | 45:33C9 | xor r9d,r9d |
00007FF6391A9626 | 4C:8BC6 | mov r8,rsi |
00007FF6391A9629 | 48:897424 20 | mov qword ptr ss:[rsp+20],rsi |
00007FF6391A962E | 48:8BD3 | mov rdx,rbx | EngineClass
00007FF6391A9631 | E8 0A64FFFF | call fsd-win64-shipping.7FF63919FA40 | NewObject<UEngine>(GetTransientPackage(), EngineClass)
00007FF6391A9636 | 48:8BC8 | mov rcx,rax |
00007FF6391A9639 | 48:8905 48C53104 | mov qword ptr ds:[7FF63D4C5B88],rax | GEngine = NewObject<UEngine>(GetTransientPackage(), EngineClass);
00007FF6391A9640 | E8 CB1B2F02 | call fsd-win64-shipping.7FF63B49B210 |
00007FF6391A9645 | 48:8B0D 3CC53104 | mov rcx,qword ptr ds:[7FF63D4C5B88] | 00007FF63D4C5B88:&"˜Õh<ö\x7F"
00007FF6391A964C | 49:8BD7 | mov rdx,r15 |
00007FF6391A964F | 48:8B01 | mov rax,qword ptr ds:[rcx] |
00007FF6391A9652 | FF90 80020000 | call qword ptr ds:[rax+280] |
00007FF6391A9658 | 48:8B4D B0 | mov rcx,qword ptr ss:[rbp-50] |
rkr35 commented
48 8B 0D ?? ?? ?? ?? 49 8B D7 48 8B 01 FF 90 80 02 00 00