Function at 0x4f0280
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f09b0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
mov eax, 0x1030
call fcn.0054ba80
mov ecx, dword [esp + 0x1030]
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x1c], edi
mov eax, dword [0x573bf8]
test eax, eax
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x14], ecx
je 0x4f0990
mov al, byte [0x6cac59]
test al, al
je 0x4f02d4
call fcn.004f1890
mov ecx, dword [ebp - 0x14]
call fcn.004f1560
push esp
push 0x561b70
call fcn.00425ff0
add esp, 8
call dword [0x6cae1c]
call fcn.004a87b0
mov dword [0x574e2c], 0
mov edx, dword [0x6cae4c]
lea eax, [ebp - 0x1040]
push eax
push edx
call fcn.004adb80
add esp, 8
lea edx, [ebp - 0x840]
lea eax, [ebp - 0x1040]
push esp
push 0x400
push eax
push edx
call dword [sym.imp.MSVCRT.dll__fullpath]
add esp, 0x10
mov ecx, 0x6cae50
lea eax, [ebp - 0x840]
push eax
call fcn.0054bebe
mov ecx, 0x6cae50
push 0x2e
call sub.MFC42.DLL_CString::ReverseFind
cmp eax, 0xffffffff
je 0x4f0387
mov ecx, 0x6cae50
lea edx, [ebp - 0x40]
push eax
push edx
call sub.MFC42.DLL_CString::Left
mov dword [ebp - 4], 0
mov ecx, 0x6cae50
lea eax, [ebp - 0x40]
push eax
call fcn.0054c020
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x40]
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x3c]
call fcn.0054beb8
mov dword [ebp - 4], 1
add esp, 0xfffffff0
lea eax, [ebp - 0x3c]
lea ebx, [esp + 8]
mov dword [esp], eax
lea edx, [0x6cae50]
mov ecx, dword [edx]
mov dword [esp + 4], 0x78eea0
mov dword [ebx], ecx
call sub.MFC42.DLL_CString::Format
add esp, 0x10
mov eax, dword [0x6cae54]
mov edx, dword [eax - 8]
test edx, edx
jne 0x4f040e
mov ecx, 0x6cae50
push 0x5c
call sub.MFC42.DLL_CString::ReverseFind
cmp eax, 0xffffffff
je 0x4f040e
mov ecx, 0x6cae50
lea edx, [ebp - 0x38]
dec eax
push eax
push edx
call sub.MFC42.DLL_CString::Left
mov dword [ebp - 4], 2
mov ecx, 0x6cae54
lea eax, [ebp - 0x38]
push eax
call fcn.0054c020
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x38]
call sub.MFC42.DLL_CString::CString
mov eax, dword [0x6cae4c]
push esp
push eax
call fcn.004adbd0
mov ebx, eax
add esp, 8
cmp ebx, 0xffffffff
je 0x4f0946
mov dword [0x574e00], 0
cmp ebx, 1
mov dword [0x6cac20], ebx
je 0x4f07ff
mov edx, dword [0x6cae4c]
push esp
push edx
call fcn.0042d4e0
add esp, 8
test eax, eax
jne 0x4f0477
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3c]
call sub.MFC42.DLL_CString::CString
xor eax, eax
mov ebx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
mov dword [0x6cad60], eax
mov edx, dword [0x6cac68]
push esp
push edx
call fcn.0042b760
add esp, 8
movzx edx, byte [0x6cac6c]
push esp
push edx
call fcn.004a87c0
add esp, 8
mov edx, dword [0x6cac70]
lea ecx, [ebp - 0x1040]
mov dword [0x573c00], edx
push 0x800
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea edx, [ebp - 0x1040]
push 0x5c
push edx
call dword [sym.imp.MSVCRT.dll_strrchr]
add esp, 8
test eax, eax
je 0x4f04d6
mov byte [eax], 0
lea ecx, [ebp - 0x34]
mov edx, dword [0x573bf8]
add edx, 0xac
push esp
push 4
push edx
push ecx
call dword [sym.imp.MSVCRT.dll_strncpy]
add esp, 0x10
mov byte [ebp - 0x30], 0
lea edi, [ebp - 0x1040]
mov edx, 0x78eee0
mov ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
dec edi
mov al, byte [edx]
inc edx
mov byte [edi], al
inc edi
test al, al
jne 0x4f050c
lea ecx, [ebp - 0x34]
lea edx, [ebp - 0x1040]
push edx
push 0xffffffffffffffff
push 0x78ef00
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
cmp eax, 0xffffffff
je 0x4f054a
test eax, eax
jne 0x4f053b
xor edx, edx
jmp 0x4f0540
mov edx, 1
push esp
push edx
call fcn.004a87c0
add esp, 8
lea ecx, [ebp - 0x34]
lea edx, [ebp - 0x1040]
push edx
push 0xffffffffffffffff
push 0x78ef20
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
cmp eax, 0xffffffff
je 0x4f057f
cmp eax, 0x10000
je 0x4f0575
cmp eax, 0x20000
jne 0x4f057f
push esp
push eax
call fcn.0042b760
add esp, 8
lea ecx, [ebp - 0x34]
lea edx, [ebp - 0x1040]
push edx
push 0xffffffffffffffff
push 0x78ef40
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
cmp eax, 0xffffffff
je 0x4f05a6
cmp eax, 5
ja 0x4f05a6
mov dword [0x573c00], eax
mov esi, dword [fcn.004318f0]
mov edi, dword [fcn.00431080]
mov edx, dword [fcn.0042d3c0]
mov dword [0x6cae14], esi
mov ecx, dword [0x562484]
mov dword [0x6cae18], edi
mov dword [0x6cae1c], edx
mov dword [0x6cae20], ecx
mov edx, dword [0x562488]
mov dword [0x6cae24], edx
mov edx, dword [0x56248c]
mov dword [0x6cae28], edx
mov edx, dword [0x562490]
mov dword [0x6cae2c], edx
mov edx, dword [0x562494]
mov dword [0x6cae30], edx
mov edx, dword [0x562498]
mov dword [0x6cae34], edx
mov edx, dword [0x56249c]
mov dword [0x6cae38], edx
mov edx, dword [0x5624a0]
mov dword [0x6cae3c], edx
mov edx, dword [fcn.0042dc40]
mov dword [0x6cae40], edx
mov edx, dword [0x5624a8]
mov dword [0x6cae44], edx
mov edx, dword [0x5624ac]
mov dword [0x6cae48], edx
mov dl, byte [0x6cac61]
test dl, dl
je 0x4f0685
mov dword [ebp - 0x2c], 0x2000000
mov ecx, dword [ebp - 0x3c]
lea edx, [ebp - 0x2c]
push esp
push edx
push 0x573bf8
push ecx
call fcn.004ad770
add esp, 0x10
mov edx, dword [ebp - 0x2c]
cmp edx, 0x2000000
je 0x4f0685
call fcn.00431080
mov dl, byte [0x6cac24]
test dl, dl
je 0x4f06a5
mov edx, dword [0x6cac20]
cmp edx, 1
je 0x4f07f5
call fcn.004aacf0
jmp 0x4f06bb
mov dl, byte [0x573df8]
test dl, dl
jne 0x4f06b4
call fcn.004aaeb0
mov byte [0x6cac24], 1
test ebx, ebx
jne 0x4f06fa
mov al, byte [0x6cac26]
test al, al
je 0x4f06cc
mov al, 1
jmp 0x4f06ce
xor al, al
mov byte [0x573c14], al
mov edx, dword [0x6cac28]
mov al, byte [0x6cac25]
test al, al
je 0x4f06e9
mov eax, 1
jmp 0x4f06eb
xor eax, eax
push eax
push edx
call fcn.00430b00
add esp, 8
call fcn.00431080
mov ecx, dword [ebp - 0x14]
call fcn.004f1300
mov al, byte [0x6cac59]
test al, al
je 0x4f0713
mov ecx, dword [ebp - 0x14]
call fcn.004f10f0
push edi
mov ecx, esp
push 0x6cae4c
call sub.MFC42.DLL_CString::CString_2
mov ecx, 0x5d5ba0
call fcn.00508770
mov ecx, 0x5d5ba0
mov eax, dword [0x5d5cb8]
push eax
call fcn.00507450
mov ecx, 0x5d5ba0
call fcn.005089e0
mov al, byte [0x6cac95]
test al, al
je 0x4f0768
mov eax, dword [0x5d5cb8]
cmp eax, 3
jle 0x4f0768
mov al, byte [0x6cac18]
test al, al
je 0x4f0768
mov ecx, dword [ebp - 0x14]
call fcn.004f6060
mov dword [0x574e2c], 1
mov al, byte [0x6cad58]
test al, al
je 0x4f0783
mov ecx, dword [ebp - 0x14]
call fcn.004f6720
xor eax, eax
mov dword [0x6cad54], eax
mov dword [0x6cacfc], eax
call fcn.00508c20
mov dword [0x6cac9c], eax
mov dword [0x6caca0], eax
xor eax, eax
mov dword [0x6cac84], eax
mov dword [0x6cac80], eax
mov byte [0x6cac88], al
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3c]
call sub.MFC42.DLL_CString::CString
mov eax, 1
mov ebx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x18]
mov edi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
call fcn.004c1d40
jmp 0x4f06bb
mov edx, dword [0x6cae4c]
push esp
push edx
call fcn.004b1b10
add esp, 8
movzx edx, al
test edx, edx
jne 0x4f0838
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3c]
call sub.MFC42.DLL_CString::CString
xor eax, eax
mov ebx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
mov esi, dword [fcn.004b2030]
mov edi, dword [fcn.004b03e0]
mov edx, dword [fcn.004b1a30]
mov dword [0x6cae14], esi
mov ecx, dword [0x564690]
mov dword [0x6cae18], edi
mov dword [0x6cae1c], edx
mov dword [0x6cae20], ecx
mov edx, dword [0x564694]
mov ecx, dword [0x573fa4]
mov dword [0x6cae24], edx
mov edx, dword [0x564698]
mov dword [0x6cae28], edx
mov edx, dword [0x56469c]
mov dword [0x6cae2c], edx
mov edx, dword [0x5646a0]
mov dword [0x6cae30], edx
mov edx, dword [0x5646a4]
mov dword [0x6cae34], edx
mov edx, dword [0x5646a8]
mov dword [0x6cae38], edx
mov edx, dword [0x5646ac]
mov dword [0x6cae3c], edx
mov edx, dword [0x5646b0]
mov dword [0x6cae40], edx
mov edx, dword [0x5646b4]
mov dword [0x6cae44], edx
mov edx, dword [0x5646b8]
mov dword [0x6cae48], edx
mov edx, dword [0x6cac64]
mov dword [0x564af0], edx
mov dl, byte [0x6cac61]
test dl, dl
mov dword [0x6cad60], ecx
je 0x4f0685
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x3c]
lea edx, [ebp - 0x28]
push esp
push edx
push 0x573f90
push ecx
call fcn.004ad770
add esp, 0x10
mov edx, dword [ebp - 0x28]
cmp edx, dword [0x573fa4]
je 0x4f0685
call fcn.004b1b80
call fcn.004b03e0
mov edx, dword [ebp - 0x28]
mov dword [0x6cad60], edx
jmp 0x4f0685
add esp, 0xfffffff0
lea ecx, [esp + 8]
lea eax, [0x6cae4c]
mov dword [esp], 0x406
mov edx, dword [eax]
mov dword [esp + 4], 0x78eec0
mov dword [ecx], edx
call fcn.005041f0
add esp, 0x10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3c]
call sub.MFC42.DLL_CString::CString
xor eax, eax
mov ebx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x573f90]
test eax, eax
jne 0x4f02c6
jmp 0x4f02ff