Function at 0x411860
Capabilities:
Read .ini file

Disassembly:
push 0xffffffffffffffff
push 0x41396b
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 0x41188b
mov eax, dword [ecx]
push 1
call dword [eax]
mov ecx, dword [sym.imp.core.dll_class_MemoryMgr__g_MemoryPtr]
push 0x2004
push ebx
mov ecx, dword [ecx]
call dword [sym.imp.core.dll_public:_void____thiscall_MemoryMgr::alloc_int__unsigned_int_]
cmp eax, ebx
je 0x4118ad
mov dword [eax], 0x4149b0
mov edi, eax
jmp 0x4118af
xor edi, edi
cmp edi, ebx
mov dword [esi + 0xc], edi
jne 0x4118cb
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 0x41c36c
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 0x41190f
push ebp
push str.Preferences_File_Missing:__s_f
push 1
call edi
add esp, 0xc
jmp 0x411919
push eax
call dword [sym.imp.MSVCRT.dll_fclose]
add esp, 4
mov ecx, dword [esi + 0x10]
cmp ecx, ebx
je 0x411926
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_]
push 0xc
push ebx
mov ecx, dword [ecx]
call ebp
cmp eax, ebx
je 0x411952
mov ecx, dword [esi + 0xc]
mov dword [eax], 0x4149ac
mov dword [eax + 4], ecx
mov dword [eax + 8], str.Game
jmp 0x411954
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 0x411987
push str.Running_in_Debug_Mode._f
push 1
call edi
add esp, 8
mov byte [0x41e478], 1
jmp 0x41198d
mov byte [0x41e478], bl
mov ecx, esi
call fcn.00411be0
test al, al
jne 0x4119ab
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 0x4119b8
mov edx, dword [ecx]
push 1
call dword [edx]
mov eax, dword [sym.imp.core.dll_class_MemoryMgr__g_MemoryPtr]
push 0x18
push 9
mov ecx, dword [eax]
call ebp
mov edi, eax
mov dword [esp + 0x10], edi
cmp edi, ebx
mov dword [esp + 0x1c], ebx
je 0x4119e5
mov ecx, edi
call dword [sym.imp.ui.dll_public:_void___thiscall_uiSubsystem::constructor_void_]
mov dword [edi], 0x4149a8
mov ecx, edi
jmp 0x4119e7
xor ecx, ecx
cmp ecx, ebx
mov dword [esp + 0x1c], 0xffffffff
mov dword [esi + 0x1c], ecx
jne 0x411a0b
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.ui.dll_public:_int___thiscall_uiSubsystem::initialize_class_Preferences__]
test eax, eax
jne 0x411a2e
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.00411e40
test al, al
jne 0x411a4c
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.00412000
test al, al
jne 0x411a73
mov ecx, esi
call fcn.00411f20
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