Function at 0x416970
Capabilities:
Read .ini file

Disassembly:
push 0xffffffffffffffff
push 0x41be77
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
push ebx
push ebp
push esi
mov esi, ecx
xor ebx, ebx
push edi
mov ecx, dword [esi + 0xc]
cmp ecx, ebx
je 0x41699b
mov eax, dword [ecx]
push 1
call dword [eax]
mov ecx, dword [sym.imp.core.dll_class_MemoryMgr__g_MemoryPtr]
push 0x128
push str.C:codemumbojumbogizacodegamelibgamesubsystem.cpp
push 0x2004
mov ecx, dword [ecx]
push ebx
call dword [sym.imp.core.dll_public:_void____thiscall_MemoryMgr::alloc_int__unsigned_int__char_const___unsigned_int_]
cmp eax, ebx
je 0x4169c7
mov dword [eax], 0x41d2e8
mov edi, eax
jmp 0x4169c9
xor edi, edi
cmp edi, ebx
mov dword [esi + 0xc], edi
jne 0x4169e5
pop edi
pop esi
pop ebp
xor al, al
pop ebx
mov ecx, dword [esp + 4]
mov dword fs:[0], ecx
add esp, 0x10
ret
lea edx, [esi + 0x12c]
lea ebp, [edi + 4]
push 0x1000
push edx
push ebp
call dword [sym.imp.MSVCRT.dll_strncpy]
push 0x427160
push ebp
mov byte [edi + 0x1003], bl
call dword [sym.imp.MSVCRT.dll_fopen]
mov edi, dword [sym.imp.logger.dll_public:_static_void___cdecl_udLogger::log_int__char_const__]
add esp, 0x14
cmp eax, ebx
jne 0x416a29
push ebp
push str.Preferences_File_Missing:__s_f
push 1
call edi
add esp, 0xc
jmp 0x416a33
push eax
call dword [sym.imp.MSVCRT.dll_fclose]
add esp, 4
mov ecx, dword [esi + 0x10]
cmp ecx, ebx
je 0x416a40
mov eax, dword [ecx]
push 1
call dword [eax]
mov ecx, dword [sym.imp.core.dll_class_MemoryMgr__g_MemoryPtr]
mov ebp, dword [sym.imp.core.dll_public:_void____thiscall_MemoryMgr::alloc_int__unsigned_int__char_const___unsigned_int_]
push 0x130
push str.C:codemumbojumbogizacodegamelibgamesubsystem.cpp
mov ecx, dword [ecx]
push 0xc
push ebx
call ebp
cmp eax, ebx
je 0x416a76
mov ecx, dword [esi + 0xc]
mov dword [eax], 0x41d2e4
mov dword [eax + 4], ecx
mov dword [eax + 8], str.Game
jmp 0x416a78
xor eax, eax
mov dword [esi + 0x10], eax
mov ecx, dword [eax + 8]
mov eax, dword [eax + 4]
add eax, 4
push eax
push ebx
push str.DebugMode
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
je 0x416aab
push str.Running_in_Debug_Mode._f
push 1
call edi
add esp, 8
mov byte [0x427d18], 1
jmp 0x416ab1
mov byte [0x427d18], bl
mov ecx, esi
call fcn.00416d60
test al, al
jne 0x416acf
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 4]
mov dword fs:[0], ecx
add esp, 0x10
ret
mov ecx, dword [esi + 0x1c]
cmp ecx, ebx
je 0x416adc
mov edx, dword [ecx]
push 1
call dword [edx]
mov eax, dword [sym.imp.core.dll_class_MemoryMgr__g_MemoryPtr]
push 0x14a
push str.C:codemumbojumbogizacodegamelibgamesubsystem.cpp
push 0x44
mov ecx, dword [eax]
push 9
call ebp
mov edi, eax
mov dword [esp + 0x10], edi
cmp edi, ebx
mov dword [esp + 0x1c], ebx
je 0x416b13
mov ecx, edi
call dword [sym.imp.ui2.dll_public:_void___thiscall_uiSubsystem::constructor_void_]
mov dword [edi], 0x41d2e0
mov ecx, edi
jmp 0x416b15
xor ecx, ecx
cmp ecx, ebx
mov dword [esp + 0x1c], 0xffffffff
mov dword [esi + 0x1c], ecx
jne 0x416b39
pop edi
pop esi
pop ebp
xor al, al
pop ebx
mov ecx, dword [esp + 4]
mov dword fs:[0], ecx
add esp, 0x10
ret
mov edx, dword [esi + 0xc]
push edx
call dword [sym.imp.ui2.dll_public:_int___thiscall_uiSubsystem::initialize_class_Preferences__]
test eax, eax
jne 0x416b5c
pop edi
pop esi
pop ebp
xor al, al
pop ebx
mov ecx, dword [esp + 4]
mov dword fs:[0], ecx
add esp, 0x10
ret
mov ecx, esi
call fcn.00416fc0
test al, al
jne 0x416b7a
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 4]
mov dword fs:[0], ecx
add esp, 0x10
ret
mov ecx, esi
call fcn.00417190
test al, al
jne 0x416ba1
mov ecx, esi
call fcn.004170a0
pop edi
pop esi
pop ebp
xor al, al
pop ebx
mov ecx, dword [esp + 4]
mov dword fs:[0], ecx
add esp, 0x10
ret
mov ecx, dword [esp + 0x14]
mov dword [esi + 4], 2
mov dword [esi + 8], ebx
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
mov dword fs:[0], ecx
add esp, 0x10
ret