Function at 0x46fc8b
Capabilities:
Check if file exists
Get file attributes
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x918
mov dword [ebp - 0x910], ecx
mov dword [ebp - 0x90c], 1
cmp dword [ebp + 0xc], 0
je 0x46fcde
mov eax, dword [ebp + 0xc]
push eax
call fcn.0054ce70
add esp, 4
test eax, eax
je 0x46fcde
mov ecx, dword [ebp + 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x46fcde
mov edx, dword [ebp + 0xc]
push edx
lea eax, [ebp - 0x104]
push eax
call fcn.0054be90
add esp, 8
jmp 0x46fcf2
push 0x6785ac
lea ecx, [ebp - 0x104]
push ecx
call fcn.0054be90
add esp, 8
cmp dword [ebp + 8], 0
je 0x46fe82
mov dword [ebp - 0x108], 0
jmp 0x46fd17
mov edx, dword [ebp - 0x108]
add edx, 1
mov dword [ebp - 0x108], edx
cmp dword [ebp - 0x108], 9
jge 0x46fe7d
mov eax, dword [ebp - 0x108]
shl eax, 5
mov ecx, dword [eax + 0x5adeb0]
mov dword [ebp - 0x914], ecx
cmp dword [ebp - 0x914], 0
je 0x46fd5d
cmp dword [ebp - 0x914], 1
je 0x46fdb0
cmp dword [ebp - 0x914], 2
je 0x46fe0f
jmp 0x46fe78
lea edx, [ebp - 0x104]
push edx
mov eax, dword [ebp - 0x108]
shl eax, 5
mov ecx, dword [eax + 0x5adeb8]
push ecx
mov edx, dword [ebp - 0x108]
shl edx, 5
mov eax, dword [edx + 0x5adeac]
push eax
mov ecx, dword [ebp - 0x108]
shl ecx, 5
mov edx, dword [ecx + 0x5adea8]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x108]
shl ecx, 5
mov edx, dword [ecx + 0x5adeb4]
mov dword [edx], eax
jmp 0x46fe78
lea eax, [ebp - 0x104]
push eax
mov ecx, dword [ebp - 0x108]
shl ecx, 5
mov edx, dword [ecx + 0x5adebc]
push edx
mov eax, dword [ebp - 0x108]
shl eax, 5
mov ecx, dword [eax + 0x5adec0]
push ecx
mov edx, dword [ebp - 0x108]
shl edx, 5
mov eax, dword [edx + 0x5adec4]
push eax
mov ecx, dword [ebp - 0x108]
shl ecx, 5
mov edx, dword [ecx + 0x5adeac]
push edx
mov eax, dword [ebp - 0x108]
shl eax, 5
mov ecx, dword [eax + 0x5adea8]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
jmp 0x46fe78
lea edx, [ebp - 0x104]
push edx
push 0x800
lea eax, [ebp - 0x908]
push eax
mov ecx, dword [ebp - 0x108]
shl ecx, 5
mov edx, dword [ecx + 0x5adec4]
push edx
mov eax, dword [ebp - 0x108]
shl eax, 5
mov ecx, dword [eax + 0x5adeac]
push ecx
mov edx, dword [ebp - 0x108]
shl edx, 5
mov eax, dword [edx + 0x5adea8]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0x908]
push ecx
call fcn.00529529
add esp, 4
mov edx, dword [ebp - 0x108]
shl edx, 5
mov ecx, dword [edx + 0x5adeb4]
mov dword [ecx], eax
jmp 0x46fd08
jmp 0x46ffe0
mov dword [ebp - 0x108], 0
jmp 0x46fe9d
mov edx, dword [ebp - 0x108]
add edx, 1
mov dword [ebp - 0x108], edx
cmp dword [ebp - 0x108], 9
jge 0x46ffe0
mov eax, dword [ebp - 0x108]
shl eax, 5
mov ecx, dword [eax + 0x5adeb0]
mov dword [ebp - 0x918], ecx
cmp dword [ebp - 0x918], 0
je 0x46fee3
cmp dword [ebp - 0x918], 1
je 0x46ff42
cmp dword [ebp - 0x918], 2
je 0x46ff81
jmp 0x46ffdb
mov edx, dword [ebp - 0x108]
shl edx, 5
mov eax, dword [edx + 0x5adeb4]
mov ecx, dword [eax]
push ecx
push 0x5b0d6c
lea edx, [ebp - 0x908]
push edx
call fcn.0054c6e3
add esp, 0xc
lea eax, [ebp - 0x104]
push eax
lea ecx, [ebp - 0x908]
push ecx
mov edx, dword [ebp - 0x108]
shl edx, 5
mov eax, dword [edx + 0x5adeac]
push eax
mov ecx, dword [ebp - 0x108]
shl ecx, 5
mov edx, dword [ecx + 0x5adea8]
push edx
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
jmp 0x46ffdb
lea eax, [ebp - 0x104]
push eax
mov ecx, dword [ebp - 0x108]
shl ecx, 5
mov edx, dword [ecx + 0x5adec0]
push edx
mov eax, dword [ebp - 0x108]
shl eax, 5
mov ecx, dword [eax + 0x5adeac]
push ecx
mov edx, dword [ebp - 0x108]
shl edx, 5
mov eax, dword [edx + 0x5adea8]
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
jmp 0x46ffdb
mov ecx, dword [ebp - 0x108]
shl ecx, 5
mov edx, dword [ecx + 0x5ac074]
mov eax, dword [edx]
push eax
push 0x5b0d70
lea ecx, [ebp - 0x908]
push ecx
call fcn.0054c6e3
add esp, 0xc
lea edx, [ebp - 0x104]
push edx
lea eax, [ebp - 0x908]
push eax
mov ecx, dword [ebp - 0x108]
shl ecx, 5
mov edx, dword [ecx + 0x5adeac]
push edx
mov eax, dword [ebp - 0x108]
shl eax, 5
mov ecx, dword [eax + 0x5adea8]
push ecx
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
jmp 0x46fe8e
mov eax, dword [ebp - 0x90c]
mov esp, ebp
pop ebp
ret 8