Function at 0x4024c0
Capabilities:
Read .ini file

Disassembly:
push 0xffffffffffffffff
push 0x427988
mov eax, dword fs:[0]
push eax
sub esp, 0x1c
push ebx
push ebp
push esi
push edi
mov eax, dword [0x433a70]
xor eax, esp
push eax
lea eax, [esp + 0x30]
mov dword fs:[0], eax
mov dword [esp + 0x18], ecx
push str.CIniFile::LoadSection
lea ecx, [esp + 0x2c]
call fcn.00401130
xor edi, edi
push 0x1c
mov dword [esp + 0x3c], edi
xor ebp, ebp
call fcn.00409b65
add esp, 4
cmp eax, edi
je 0x40251e
push 0xa
mov ecx, eax
call fcn.00402090
mov dword [esp + 0x1c], eax
jmp 0x402522
mov dword [esp + 0x1c], edi
push 0x104
call fcn.00409b95
mov esi, eax
push 0x200
mov dword [esp + 0x1c], esi
call fcn.00409b95
push 0x200
mov ebx, eax
call fcn.00409b95
add esp, 0xc
test esi, esi
mov dword [esp + 0x24], eax
je 0x4027ad
test ebx, ebx
je 0x4027ad
cmp dword [esp + 0x1c], edi
je 0x4027ad
test eax, eax
je 0x4027c2
mov esi, dword [esp + 0x40]
push esi
lea eax, [esp + 0x2c]
push str.Loading_section:__s
push eax
call fcn.00401460
mov ecx, dword [esp + 0x24]
mov edx, dword [ecx + 0xc]
mov eax, dword [esp + 0x20]
add esp, 0xc
push edx
push 0x104
push eax
push str.NOT_FOUND
push 0x429828
push esi
call fcn.00401510
mov ecx, dword [esp + 0x14]
push str.NOT_FOUND
push ecx
mov dword [esp + 0x28], 1
call fcn.00413ac5
add esp, 8
test eax, eax
je 0x4027ad
mov esi, dword [esp + 0x44]
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x4025d5
sub eax, edx
add eax, 0xa
push eax
call fcn.00409b95
add esp, 4
test eax, eax
mov dword [esp + 0x40], eax
je 0x4027a9
push 1
push esi
push str._s_d
mov esi, eax
push 0x104
push esi
call fcn.004131ec
mov edx, dword [esp + 0x2c]
mov eax, dword [edx + 0xc]
mov ecx, dword [esp + 0x28]
add esp, 0x14
push eax
push 0x104
push ebx
push str.NOT_FOUND
push esi
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push str.NOT_FOUND
push ebx
call fcn.00413ac5
add esp, 8
test eax, eax
je 0x4027a9
add dword [esp + 0x20], 1
push 0x25
push ebx
call fcn.0041389e
mov esi, eax
add esp, 8
test esi, esi
je 0x402711
push esi
xor ebp, ebp
call fcn.00413daf
push 0x25
push eax
call fcn.0041389e
mov edi, eax
add esp, 0xc
test edi, edi
je 0x4026e0
mov ecx, dword [esp + 0x18]
mov byte [esi], 0
mov byte [edi], 0
mov edx, dword [ecx + 0xc]
push edx
add esi, 1
push esi
add edi, 1
call fcn.004018b0
mov ebp, eax
test ebp, ebp
je 0x402749
mov esi, dword [esp + 0x24]
push edi
push ebp
push ebx
push 0x429778
push 0x200
push esi
call fcn.004131ec
add esp, 0x18
cmp eax, 0xffffffff
je 0x4026f5
mov edx, ebx
mov eax, esi
sub edx, esi
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, 1
test cl, cl
jne 0x4026c1
push 0x25
push ebx
call fcn.0041389e
mov esi, eax
add esp, 8
test esi, esi
jne 0x40265f
jmp 0x402711
push ebx
lea eax, [esp + 0x2c]
push str.Invalid_string_:__s
push eax
call fcn.00401460
add esp, 0xc
jmp 0x402711
push 0xcb
push str..cinifile.cpp
lea ecx, [esp + 0x30]
push str.ERROR:_String_too_long__s:_d
push ecx
call fcn.00401460
add esp, 0x10
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x402716
sub eax, edx
add eax, 1
push eax
call fcn.00409b95
mov esi, eax
add esp, 4
mov ecx, ebx
sub esi, ebx
mov dl, byte [ecx]
mov byte [esi + ecx], dl
add ecx, 1
test dl, dl
jne 0x402733
mov ecx, dword [esp + 0x1c]
push eax
call fcn.00402300
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
push edx
push eax
push str._s_d
push esi
call fcn.00413df0
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx + 0xc]
mov eax, dword [esp + 0x24]
add esp, 0x10
push edx
push 0x104
push ebx
push str.NOT_FOUND
push esi
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test ebp, ebp
je 0x402793
push ebp
call fcn.00409b90
add esp, 4
xor ebp, ebp
push str.NOT_FOUND
push ebx
call fcn.00413ac5
add esp, 8
test eax, eax
jne 0x402645
mov edi, dword [esp + 0x40]
mov eax, dword [esp + 0x24]
test eax, eax
je 0x4027be
push eax
call fcn.00409b90
add esp, 4
mov esi, dword [esp + 0x14]
test esi, esi
je 0x4027cf
push esi
call fcn.00409b90
add esp, 4
test edi, edi
je 0x4027dc
push edi
call fcn.00409b90
add esp, 4
test ebx, ebx
je 0x4027e9
push ebx
call fcn.00409b90
add esp, 4
test ebp, ebp
je 0x4027f6
push ebp
call fcn.00409b90
add esp, 4
lea ecx, [esp + 0x28]
mov dword [esp + 0x38], 0xffffffff
call fcn.004012e0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret 8