Function at 0x4a89ce
Capabilities:
Read .ini file

Disassembly:
push 0x4ac
mov eax, 0x563e72
call fcn.00539a44
cmp dword [edi + 0x88], 8
mov esi, ecx
jb 0x4a89ed
mov eax, dword [edi + 0x74]
jmp 0x4a89f0
lea eax, [edi + 0x74]
push eax
lea eax, [ebp - 0x460]
push eax
call fcn.004a78a5
lea ecx, [ebp - 0x4b4]
call fcn.00416626
xor ebx, ebx
mov dword [ebp - 4], ebx
cmp dword [esi + 0x18], 8
jb 0x4a8a18
mov eax, dword [esi + 4]
jmp 0x4a8a1b
lea eax, [esi + 4]
lea ecx, [ebp - 0x4b4]
push ecx
push 0x58cd98
push eax
call fcn.004a79d4
mov eax, dword [ebp - 0x4a4]
sub eax, dword [ebp - 0x4a8]
add esp, 0xc
push 0x1c
cdq
pop ecx
idiv ecx
test eax, eax
jne 0x4a8a52
push esi
lea ecx, [ebp - 0x4b4]
call fcn.00406326
mov eax, dword [ebp - 0x4a4]
sub eax, dword [ebp - 0x4a8]
push 0x1c
cdq
pop ecx
idiv ecx
mov dword [ebp - 0x464], ebx
test eax, eax
jbe 0x4a90af
lea ecx, [ebp - 0x49c]
call fcn.00416626
push dword [ebp - 0x464]
lea esi, [ebp - 0x4b4]
mov byte [ebp - 4], 1
call fcn.0047448e
cmp dword [eax + 0x18], 8
jb 0x4a8a9d
mov eax, dword [eax + 4]
jmp 0x4a8aa0
add eax, 4
lea ecx, [ebp - 0x49c]
push ecx
push 0x58cda0
push eax
call fcn.004a79d4
mov eax, dword [ebp - 0x48c]
sub eax, dword [ebp - 0x490]
add esp, 0xc
push 0x1c
cdq
pop ecx
idiv ecx
test eax, eax
jne 0x4a8b1e
push dword [ebp - 0x464]
lea esi, [ebp - 0x4b4]
call fcn.0047448e
cmp dword [eax + 0x18], 8
jb 0x4a8ae7
mov eax, dword [eax + 4]
jmp 0x4a8aea
add eax, 4
push eax
lea ecx, [ebp - 0x23c]
call fcn.0040a8b0
lea eax, [ebp - 0x23c]
push eax
lea ecx, [ebp - 0x49c]
mov byte [ebp - 4], 2
call fcn.00406326
push ebx
push 1
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 1
call fcn.004053e5
mov eax, dword [ebp - 0x48c]
sub eax, dword [ebp - 0x490]
push 0x1c
cdq
pop ecx
idiv ecx
mov dword [ebp - 0x480], ebx
test eax, eax
jbe 0x4a9096
mov dword [ebp - 0x4b8], 0x3e
push dword [ebp - 0x480]
lea esi, [ebp - 0x49c]
call fcn.0047448e
push eax
lea ecx, [ebp - 0x258]
call fcn.004051c1
push 1
push ebx
lea eax, [ebp - 0x4b8]
push eax
lea ecx, [ebp - 0x258]
mov byte [ebp - 4], 3
call fcn.0040a8d5
cmp eax, 0xffffffff
je 0x4a8cdd
lea ecx, [ebp - 0x47c]
call fcn.00416626
mov byte [ebp - 4], 4
cmp dword [ebp - 0x240], 8
mov eax, dword [ebp - 0x254]
jae 0x4a8bab
lea eax, [ebp - 0x254]
lea ecx, [ebp - 0x47c]
push ecx
push 0x58b840
push eax
call fcn.004a79d4
add esp, 0xc
push 2
pop ecx
cmp eax, ecx
jne 0x4a9037
push ebx
lea esi, [ebp - 0x47c]
call fcn.0047448e
cmp dword [eax + 0x18], 8
jb 0x4a8be2
mov eax, dword [eax + 4]
jmp 0x4a8be5
add eax, 4
push eax
lea eax, [edi + 0xc5f38]
push eax
call fcn.004aa8b8
push ebx
lea ecx, [ebp - 0x23c]
mov esi, eax
mov dword [ebp - 0x224], 7
call fcn.004056b6
mov byte [ebp - 4], 5
cmp esi, ebx
je 0x4a8c1b
add esi, 0x410
push esi
jmp 0x4a8c7e
xor eax, eax
push 0x208
mov word [ebp - 0x220], ax
lea eax, [ebp - 0x21e]
push ebx
push eax
call fcn.00537010
add esp, 0xc
push ebx
lea esi, [ebp - 0x47c]
call fcn.0047448e
cmp dword [eax + 0x18], 8
jb 0x4a8c50
mov eax, dword [eax + 4]
jmp 0x4a8c53
add eax, 4
lea ecx, [ebp - 0x460]
push ecx
push 0x103
lea ecx, [ebp - 0x220]
push ecx
push 0x577458
push str.version
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x220]
push eax
lea ecx, [ebp - 0x23c]
call fcn.00406430
push 1
lea esi, [ebp - 0x47c]
call fcn.0047448e
cmp dword [eax + 0x18], 8
jb 0x4a8ca1
mov eax, dword [eax + 4]
jmp 0x4a8ca4
add eax, 4
cmp dword [ebp - 0x224], 8
mov ecx, dword [ebp - 0x238]
jae 0x4a8cb9
lea ecx, [ebp - 0x238]
push eax
push ecx
call fcn.0049681a
pop ecx
pop ecx
push ebx
lea ecx, [ebp - 0x23c]
push 1
test eax, eax
jle 0x4a8e51
call fcn.004053e5
jmp 0x4a903d
push 1
push ebx
lea eax, [ebp - 0x484]
push eax
lea ecx, [ebp - 0x258]
mov dword [ebp - 0x484], 0x3c
call fcn.0040a8d5
cmp eax, 0xffffffff
je 0x4a8ebe
lea ecx, [ebp - 0x47c]
call fcn.00416626
mov byte [ebp - 4], 6
cmp dword [ebp - 0x240], 8
mov eax, dword [ebp - 0x254]
jae 0x4a8d29
lea eax, [ebp - 0x254]
lea ecx, [ebp - 0x47c]
push ecx
push 0x58b830
push eax
call fcn.004a79d4
add esp, 0xc
push 2
pop ecx
cmp eax, ecx
jne 0x4a9037
push ebx
lea esi, [ebp - 0x47c]
call fcn.0047448e
cmp dword [eax + 0x18], 8
jb 0x4a8d60
mov eax, dword [eax + 4]
jmp 0x4a8d63
add eax, 4
push eax
lea eax, [edi + 0xc5f38]
push eax
call fcn.004aa8b8
push ebx
lea ecx, [ebp - 0x23c]
mov esi, eax
mov dword [ebp - 0x224], 7
call fcn.004056b6
mov byte [ebp - 4], 7
cmp esi, ebx
je 0x4a8d99
add esi, 0x410
push esi
jmp 0x4a8dfc
xor eax, eax
push 0x208
mov word [ebp - 0x220], ax
lea eax, [ebp - 0x21e]
push ebx
push eax
call fcn.00537010
add esp, 0xc
push ebx
lea esi, [ebp - 0x47c]
call fcn.0047448e
cmp dword [eax + 0x18], 8
jb 0x4a8dce
mov eax, dword [eax + 4]
jmp 0x4a8dd1
add eax, 4
lea ecx, [ebp - 0x460]
push ecx
push 0x103
lea ecx, [ebp - 0x220]
push ecx
push 0x577458
push str.version
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x220]
push eax
lea ecx, [ebp - 0x23c]
call fcn.00406430
push 1
lea esi, [ebp - 0x47c]
call fcn.0047448e
cmp dword [eax + 0x18], 8
jb 0x4a8e1f
mov eax, dword [eax + 4]
jmp 0x4a8e22
add eax, 4
cmp dword [ebp - 0x224], 8
mov ecx, dword [ebp - 0x238]
jae 0x4a8e37
lea ecx, [ebp - 0x238]
push eax
push ecx
call fcn.0049681a
pop ecx
pop ecx
push ebx
lea ecx, [ebp - 0x23c]
push 1
test eax, eax
jl 0x4a8cd3
call fcn.004053e5
lea ecx, [ebp - 0x47c]
call fcn.0041675a
push dword [ebp - 0x47c]
call fcn.0052f7c5
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x258]
call fcn.004053e5
lea ecx, [ebp - 0x49c]
mov byte [ebp - 4], bl
call fcn.0041675a
push dword [ebp - 0x49c]
call fcn.0052f7c5
mov eax, dword [ebp - 0x4a4]
sub eax, dword [ebp - 0x4a8]
pop ecx
push 0x1c
cdq
pop ecx
idiv ecx
inc dword [ebp - 0x464]
cmp dword [ebp - 0x464], eax
jb 0x4a8a72
jmp 0x4a90af
push 1
push ebx
lea eax, [ebp - 0x484]
push eax
lea ecx, [ebp - 0x258]
mov dword [ebp - 0x484], 0x3d
call fcn.0040a8d5
cmp eax, 0xffffffff
je 0x4a9056
lea ecx, [ebp - 0x47c]
call fcn.00416626
mov byte [ebp - 4], 8
cmp dword [ebp - 0x240], 8
mov eax, dword [ebp - 0x254]
jae 0x4a8f0a
lea eax, [ebp - 0x254]
lea ecx, [ebp - 0x47c]
push ecx
push 0x58b854
push eax
call fcn.004a79d4
add esp, 0xc
push 2
pop ecx
cmp eax, ecx
jne 0x4a9037
push ebx
lea esi, [ebp - 0x47c]
call fcn.0047448e
cmp dword [eax + 0x18], 8
jb 0x4a8f41
mov eax, dword [eax + 4]
jmp 0x4a8f44
add eax, 4
push eax
lea eax, [edi + 0xc5f38]
push eax
call fcn.004aa8b8
push ebx
lea ecx, [ebp - 0x23c]
mov esi, eax
mov dword [ebp - 0x224], 7
call fcn.004056b6
mov byte [ebp - 4], 9
cmp esi, ebx
je 0x4a8f7a
add esi, 0x410
push esi
jmp 0x4a8fdd
xor eax, eax
push 0x208
mov word [ebp - 0x220], ax
lea eax, [ebp - 0x21e]
push ebx
push eax
call fcn.00537010
add esp, 0xc
push ebx
lea esi, [ebp - 0x47c]
call fcn.0047448e
cmp dword [eax + 0x18], 8
jb 0x4a8faf
mov eax, dword [eax + 4]
jmp 0x4a8fb2
add eax, 4
lea ecx, [ebp - 0x460]
push ecx
push 0x103
lea ecx, [ebp - 0x220]
push ecx
push 0x577458
push str.version
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x220]
push eax
lea ecx, [ebp - 0x23c]
call fcn.00406430
push 1
lea esi, [ebp - 0x47c]
call fcn.0047448e
cmp dword [eax + 0x18], 8
jb 0x4a9000
mov eax, dword [eax + 4]
jmp 0x4a9003
add eax, 4
cmp dword [ebp - 0x224], 8
mov ecx, dword [ebp - 0x238]
jae 0x4a9018
lea ecx, [ebp - 0x238]
push eax
push ecx
call fcn.0049681a
pop ecx
pop ecx
push ebx
lea ecx, [ebp - 0x23c]
push 1
test eax, eax
jne 0x4a8e51
jmp 0x4a8cd3
mov dword [edi + 0x8c], ecx
lea ecx, [ebp - 0x47c]
call fcn.0041675a
push dword [ebp - 0x47c]
call fcn.0052f7c5
pop ecx
jmp 0x4a9060
mov dword [edi + 0x8c], 2
push ebx
push 1
lea ecx, [ebp - 0x258]
mov byte [ebp - 4], 1
call fcn.004053e5
mov eax, dword [ebp - 0x48c]
sub eax, dword [ebp - 0x490]
push 0x1c
cdq
pop ecx
idiv ecx
inc dword [ebp - 0x480]
cmp dword [ebp - 0x480], eax
jb 0x4a8b48
lea ecx, [ebp - 0x49c]
call fcn.0041675a
push dword [ebp - 0x49c]
call fcn.0052f7c5
pop ecx
mov bl, 1
lea ecx, [ebp - 0x4b4]
call fcn.0041675a
push dword [ebp - 0x4b4]
call fcn.0052f7c5
pop ecx
mov al, bl
call fcn.00539ac7
ret