Function at 0x4c2714
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov esi, dword [ebp + 0xc]
mov edi, 0x51a300
mov eax, dword [ebp + 0x20]
mov dword [eax], 1
mov edx, dword [esi + 0x30]
mov eax, dword [edx]
mov dword [edi], eax
cmp byte [eax], 0x2d
jne 0x4c2757
inc dword [edi]
mov edx, dword [edi]
cmp byte [edx], 0x6e
jne 0x4c2747
mov ecx, dword [ebp + 0x20]
xor eax, eax
mov dword [ecx], eax
mov edx, dword [esi + 0x30]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00498fb0
mov dword [ebp + 8], eax
push 0
mov eax, dword [ebp + 0x1c]
push eax
mov edx, dword [esi + 0x30]
push edx
lea ecx, [ebp + 8]
push ecx
call fcn.004b7ce0
dec eax
je 0x4c2774
xor eax, eax
jmp 0x4c2944
mov edx, dword [ebp + 0x1c]
push edx
mov ecx, dword [ebp + 0x1c]
push ecx
call fcn.0041ff0c
test eax, eax
jne 0x4c278c
xor eax, eax
jmp 0x4c2944
push 0
push 0x5120fc
mov edx, dword [esi + 0x30]
mov ecx, dword [edx + 0x30]
push ecx
lea eax, [ebp + 8]
push eax
call fcn.004b7ce0
dec eax
je 0x4c27ad
xor eax, eax
jmp 0x4c2944
push 0x5d
push 0x5120fc
call fcn.00401278
add esp, 8
mov ebx, eax
mov dword [edi], ebx
test ebx, ebx
je 0x4c27c9
mov byte [ebx], 0x7e
jmp 0x4c27ad
mov eax, dword [esi + 0x30]
mov edx, dword [eax + 0x30]
mov ecx, dword [edx + 0x30]
mov eax, dword [ecx]
cmp byte [eax], 0x5b
jne 0x4c27dc
mov byte [eax], 0x7e
mov edx, dword [ebp + 0x1c]
push edx
push 0x3b5
mov ecx, dword [ebp + 0x18]
push ecx
push 0x4fb8de
mov eax, dword [esi + 0x30]
mov edx, dword [eax + 0x30]
mov ecx, dword [edx + 0x30]
mov eax, dword [ecx]
push eax
push 0x5120fc
call sub.KERNEL32.dll_GetPrivateProfileStringA
mov edx, dword [esi + 0x30]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00498fb0
mov dword [ebp + 8], eax
mov eax, dword [esi + 0x30]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.00498fb0
mov dword [ebp + 8], eax
mov ecx, dword [esi + 0x30]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.00498fb0
mov dword [ebp + 8], eax
mov edx, dword [ebp + 0x18]
cmp byte [edx], 0
jne 0x4c2844
mov eax, dword [ebp + 8]
jmp 0x4c2944
mov edx, dword [ebp + 0x20]
cmp dword [edx], 0
je 0x4c290b
push 0x4fb8e2
mov ecx, dword [ebp + 0x18]
push ecx
call fcn.004015f8
add esp, 8
mov ebx, eax
mov dword [edi], ebx
test ebx, ebx
je 0x4c28f2
mov eax, dword [ebp + 0x10]
cmp dword [eax], 0
je 0x4c287d
mov byte [ebx], 0
add dword [edi], 3
jmp 0x4c2882
mov edx, dword [ebp + 0x18]
mov dword [edi], edx
mov ecx, dword [edi]
cmp byte [ecx], 0
je 0x4c28f2
mov eax, dword [ebp + 0x24]
push eax
push 0x51a304
mov edx, dword [ebp + 0x1c]
push edx
mov ecx, dword [edi]
push ecx
call fcn.004b7478
mov ebx, eax
mov dword [0x51a2f8], ebx
test ebx, ebx
jne 0x4c28b1
xor eax, eax
jmp 0x4c2944
mov edx, dword [ebp + 0x10]
mov edi, dword [edx]
test edi, edi
je 0x4c28dd
mov eax, dword [ebp + 0x14]
mov edx, dword [eax]
mov dword [0x51a2fc], edx
push ebx
mov ecx, dword [0x51a2fc]
mov eax, dword [ecx + 0x30]
push eax
push edi
call fcn.00499070
mov edx, dword [ebp + 0x10]
mov dword [edx], eax
jmp 0x4c28f2
mov ecx, dword [ebp + 0x10]
mov eax, dword [0x51a2f8]
mov dword [ecx], eax
mov edx, dword [ebp + 0x14]
mov ecx, dword [0x51a2f8]
mov dword [edx], ecx
mov eax, dword [ebp + 0x18]
push eax
call fcn.004b6c48
mov ebx, eax
mov dword [0x51a2f8], ebx
test ebx, ebx
jne 0x4c292a
xor eax, eax
jmp 0x4c2944
push 0
push 0
mov edx, dword [ebp + 0x18]
push edx
push 0
call fcn.00498c08
mov ebx, eax
mov dword [0x51a2f8], ebx
test ebx, ebx
jne 0x4c292a
xor eax, eax
jmp 0x4c2944
mov edx, dword [0x51a2f8]
push edx
mov ecx, dword [esi + 0x30]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.00499070
mov dword [ebp + 8], eax
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
pop ebp
ret 0x20