Function at 0x432588
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x17c
push ebx
push esi
push edi
xor edi, edi
push 0x470274
mov dword [ebp - 0x158], edi
push dword [ebp + 0xc]
call fcn.00460580
not eax
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x154], 0
add esp, 8
mov eax, dword [ebp + 0x18]
cmp dword [eax], 0
je 0x432909
mov ecx, dword [ebp - 0x154]
mov edx, dword [ebp + 0x18]
mov ebx, dword [edx + ecx*4]
cmp bl, 1
jne 0x4325e7
mov dword [ebp - 0x148], 0x100
jmp 0x4325f1
mov dword [ebp - 0x148], 0x40
cmp ebx, 0xff
jge 0x432761
push dword [ebp + 8]
lea edx, [ebp - 0x140]
mov eax, dword [ebp + 0x10]
push dword [ebp - 0x148]
push edx
push 0
mov ecx, dword [ebp - 0x154]
push dword [eax + ecx*4]
push dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.DLL_GetPrivateProfileStringA]
mov esi, eax
cmp ebx, 7
je 0x432909
push edi
lea edx, [ebp - 0x140]
push edx
call fcn.00460634
add esp, 4
lea ecx, [ebp - 0x140]
push eax
push ecx
call fcn.00432948
and eax, 0xffff
add esp, 0xc
mov edi, eax
cmp ebx, 1
jne 0x432679
lea edx, [ebp - 0x140]
push edx
mov ecx, dword [ebp - 0x154]
mov edx, dword [ebp + 0x14]
push dword [edx + ecx*4]
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
jmp 0x43273e
cmp ebx, 2
jne 0x4326a0
lea edx, [ebp - 0x140]
push edx
call fcn.00461574
mov ecx, dword [ebp - 0x154]
mov edx, dword [ebp + 0x14]
mov ecx, dword [edx + ecx*4]
mov byte [ecx], al
add esp, 4
jmp 0x43273e
cmp ebx, 3
jne 0x4326c8
push 0xa
lea edx, [ebp - 0x140]
push 0
push edx
call fcn.00461efc
mov ecx, dword [ebp - 0x154]
mov edx, dword [ebp + 0x14]
mov ecx, dword [edx + ecx*4]
mov dword [ecx], eax
add esp, 0xc
jmp 0x43273e
cmp ebx, 4
jne 0x4326ee
push 0
lea edx, [ebp - 0x140]
push edx
call fcn.00462b5c
mov ecx, dword [ebp - 0x154]
mov edx, dword [ebp + 0x14]
mov ecx, dword [edx + ecx*4]
fstp dword [ecx]
add esp, 8
jmp 0x43273e
cmp ebx, 5
jne 0x432714
push 0
lea edx, [ebp - 0x140]
push edx
call fcn.00462abc
mov ecx, dword [ebp - 0x154]
mov edx, dword [ebp + 0x14]
mov ecx, dword [edx + ecx*4]
fstp qword [ecx]
add esp, 8
jmp 0x43273e
cmp ebx, 6
jne 0x4328f0
push 0x10
lea edx, [ebp - 0x140]
push 0
push edx
call fcn.00462990
mov ecx, dword [ebp - 0x154]
mov edx, dword [ebp + 0x14]
mov ecx, dword [edx + ecx*4]
mov dword [ecx], eax
add esp, 0xc
cmp ebx, 1
je 0x4328f0
cmp esi, 1
mov ebx, dword [ebp - 0x158]
sbb ecx, ecx
neg ecx
or ebx, ecx
mov dword [ebp - 0x158], ebx
jmp 0x4328f0
mov eax, ebx
sar eax, 8
and ebx, 0xff
mov esi, eax
cmp ebx, 3
jne 0x432787
mov ecx, dword [ebp - 0x154]
mov edx, dword [ebp + 0x14]
mov ecx, dword [edx + ecx*4]
mov dword [ebp - 0x164], ecx
jmp 0x4327bb
cmp ebx, 5
jne 0x4327a0
mov edx, dword [ebp - 0x154]
mov ecx, dword [ebp + 0x14]
mov edx, dword [ecx + edx*4]
mov dword [ebp - 0x150], edx
jmp 0x4327bb
cmp ebx, 6
jne 0x4328f0
mov ecx, dword [ebp - 0x154]
mov edx, dword [ebp + 0x14]
mov ecx, dword [edx + ecx*4]
mov dword [ebp - 0x160], ecx
mov dword [ebp - 0x144], ebx
xor ebx, ebx
test esi, esi
jle 0x4328f0
mov edx, dword [ebp - 0x154]
mov ecx, dword [ebp + 0x10]
lea edx, [ecx + edx*4]
mov dword [ebp - 0x14c], edx
mov dword [ebp - 0x15c], esi
lea ecx, [ebx + 1]
push ecx
mov edx, dword [ebp - 0x14c]
lea ecx, [ebp - 0x40]
push dword [edx]
push 0x47029c
push ecx
call fcn.00460790
lea edx, [ebp - 0x140]
lea ecx, [ebp - 0x40]
push dword [ebp + 8]
push dword [ebp - 0x148]
push edx
push 0
push ecx
push dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.DLL_GetPrivateProfileStringA]
lea edx, [ebp - 0x140]
mov esi, eax
push edi
push edx
call fcn.00460634
add esp, 4
lea ecx, [ebp - 0x140]
push eax
push ecx
call fcn.00432948
and eax, 0xffff
add esp, 0x1c
mov edx, dword [ebp - 0x144]
mov edi, eax
cmp edx, 3
jne 0x43286e
push 0xa
lea ecx, [ebp - 0x140]
push 0
push ecx
call fcn.00461efc
mov edx, dword [ebp - 0x164]
mov dword [edx + ebx*4], eax
add esp, 0xc
jmp 0x4328d6
cmp edx, 5
jne 0x4328ba
test esi, esi
je 0x432893
push 0
lea ecx, [ebp - 0x140]
push ecx
call fcn.00462abc
mov edx, dword [ebp - 0x150]
fstp qword [edx + ebx*8]
add esp, 8
jmp 0x4328d6
cmp dword [ebp - 0x168], 0
je 0x4328d6
mov esi, 1
mov edx, dword [ebp - 0x150]
mov ecx, esi
mov dword [ebp - 0x178], esi
fild dword [ebp - 0x178]
fstp qword [edx + ebx*8]
jmp 0x4328d6
push 0x10
lea ecx, [ebp - 0x140]
push 0
push ecx
call fcn.00462990
mov edx, dword [ebp - 0x160]
mov dword [edx + ebx*4], eax
add esp, 0xc
cmp esi, 1
sbb ecx, ecx
neg ecx
inc ebx
or dword [ebp - 0x158], ecx
cmp ebx, dword [ebp - 0x15c]
jl 0x4327e3
inc dword [ebp - 0x154]
mov eax, dword [ebp - 0x154]
mov ebx, dword [ebp + 0x18]
cmp dword [ebx + eax*4], 0
jne 0x4325ca
mov ebx, dword [ebp - 0x158]
test ebx, ebx
jne 0x43293e
mov edx, dword [ebp - 0x154]
mov ecx, dword [ebp + 0x18]
cmp dword [ecx + edx*4], 0
je 0x43293e
push 0xa
lea edx, [ebp - 0x140]
push 0
push edx
call fcn.00461efc
add esp, 0xc
cmp eax, edi
je 0x43293e
mov ebx, 0xffffffff
pop edi
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret