Function at 0x403832
Capabilities:
Read .ini file

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x20c
mov eax, dword [0x40e004]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push esi
push edi
mov edi, 0x40eea4
mov esi, 0x401298
push edi
push 0x401284
push 0x401290
push esi
call ebx
push edi
push 0
push 0x4012a0
push esi
call ebx
push edi
push 0x4012ac
push 0x4012b0
push esi
call ebx
push edi
push 0
mov esi, 0x4012bc
push esi
push 0x401064
call ebx
mov eax, dword [0x4108b4]
lea ecx, [ebp - 0x20c]
mov edi, 0x208
mov edx, edi
sub eax, 0x865
je 0x4038bb
dec eax
je 0x4038b4
push 0x4012c8
jmp 0x4038bc
push 0x4012d4
jmp 0x4038bc
push esi
call fcn.00401a45
mov esi, 0x40eea4
lea eax, [ebp - 0x20c]
push esi
push eax
push 0x4012e0
push 0x401064
call ebx
push esi
mov esi, dword [sym.imp.msvcrt.dll__itoa]
lea eax, [ebp - 0x20c]
push 0xa
push eax
push dword [0x4108b8]
call esi
add esp, 0xc
push eax
push 0x4012f0
push 0x401064
call ebx
push 0x40eea4
push 0xa
lea eax, [ebp - 0x20c]
xor ebx, ebx
push eax
mov eax, dword [0x4108bc]
inc ebx
and eax, ebx
push eax
call esi
add esp, 0xc
push eax
push 0x4010fc
push 0x401064
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x40eea4
push 0xa
lea eax, [ebp - 0x20c]
push eax
mov eax, dword [0x4108bc]
shr eax, 1
and eax, ebx
push eax
call esi
add esp, 0xc
push eax
push 0x401114
push 0x401064
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x40eea4
push 0xa
lea eax, [ebp - 0x20c]
push eax
mov eax, dword [0x4108bc]
shr eax, 3
and eax, ebx
push eax
call esi
add esp, 0xc
push eax
push 0x401130
push 0x401064
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x40eea4
push 0xa
lea eax, [ebp - 0x20c]
push eax
mov eax, dword [0x4108be]
and eax, ebx
push eax
call esi
add esp, 0xc
push eax
push 0x40130c
push 0x401064
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov eax, dword [0x4108bc]
test eax, 0x20000
jne 0x4039e1
test eax, 0x40000
je 0x4039d2
push 2
pop ebx
jmp 0x4039e1
mov ebx, eax
and ebx, 0x80000
neg ebx
sbb ebx, ebx
and ebx, 3
push dword [ebx*4 + 0x4017f0]
mov edx, edi
lea ecx, [ebp - 0x20c]
call fcn.00401a45
mov ebx, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea eax, [ebp - 0x20c]
mov esi, 0x40eea4
push esi
push eax
push 0x40131c
push 0x401064
call ebx
mov eax, dword [0x4108c4]
lea ecx, [ebp - 0x20c]
mov byte [ebp - 0x20c], 0
mov edx, edi
test al, 1
je 0x403a5e
test al, 2
je 0x403a37
push 0x401330
jmp 0x403a3c
push 0x401334
call fcn.00401a45
test byte [0x4108c4], 4
je 0x403a68
push 0x401338
mov edx, edi
lea ecx, [ebp - 0x20c]
call fcn.00401acd
jmp 0x403a68
push 0x40133c
call fcn.00401a45
push esi
lea eax, [ebp - 0x20c]
push eax
push 0x401340
push 0x401064
call ebx
mov esi, 0x40e020
mov eax, dword [esi + 8]
mov edx, dword [esi - 0xc]
test eax, eax
je 0x403a9c
xor ecx, ecx
cmp dword [eax], ecx
push ecx
push dword [esi]
mov ecx, dword [esi - 0x10]
jne 0x403aa3
push dword [esi - 8]
jmp 0x403aa6
mov ecx, dword [esi - 0x10]
push 0
push dword [esi]
push dword [esi - 4]
call fcn.00402bbe
add esi, 0x1c
cmp esi, 0x40e11c
jl 0x403a81
test dword [0x4108bc], 0x10000
je 0x403af5
push 0
mov esi, 0x104
mov edx, 0x40134c
push esi
push 0x40fa40
mov ecx, 0x401064
call fcn.00402bbe
push 0
push esi
push 0x410390
mov edx, 0x40135c
mov ecx, 0x401064
call fcn.00402bbe
call fcn.0040bdc7
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x20c]
push 0x40eea4
push edi
push eax
push 0x401060
push 0x401370
push 0x401064
call esi
test eax, eax
je 0x403b4d
push 0x410340
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x403b4d
xor edx, edx
lea ecx, [ebp - 0x20c]
call fcn.00402d98
test eax, eax
jne 0x403b4d
xor eax, eax
jmp 0x403bc5
cmp byte [0x410340], 0
je 0x403b7c
push 0x40eea4
push 0x410340
push 0x401370
push 0x401064
call ebx
mov ecx, 0x410340
mov edx, ecx
call fcn.00402f35
test eax, eax
je 0x403b49
push 0x40eea4
push edi
lea eax, [ebp - 0x20c]
mov edi, 0x401064
push eax
push 0x401060
push 0x401234
push edi
call esi
test eax, eax
je 0x403bae
lea ecx, [ebp - 0x20c]
call fcn.00402e91
test eax, eax
je 0x403b49
push 0x40eea4
push 0x4102f0
push 0x401234
push edi
call ebx
call fcn.004032fa
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0040cb2e
mov esp, ebp
pop ebp
ret