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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x620
mov eax, dword [0x100b2d0]
mov ecx, dword [ebp + 0x10]
push ebx
push esi
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push edi
push eax
mov dword [ebp - 0x61c], eax
mov esi, 0x104
mov dword [ebp - 0x620], ecx
mov ecx, dword [ebp + 0x14]
push esi
lea eax, [ebp - 0x20c]
push eax
mov dword [ebp - 0x618], ecx
call fcn.0100160f
cmp byte [ebp - 0x20c], 0x22
jne 0x100273c
lea eax, [ebp - 0x20b]
push 0x1001340
jmp 0x1002747
lea eax, [ebp - 0x20c]
push 0x100133c
mov dword [ebp - 0x610], eax
lea eax, [ebp - 0x610]
push eax
call fcn.01001942
mov edi, dword [ebp - 0x610]
push edi
mov dword [ebp - 0x614], eax
call fcn.01001e13
test eax, eax
lea eax, [ebp - 0x108]
jne 0x1002791
push 0x100bc44
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push edi
push esi
lea eax, [ebp - 0x108]
push eax
call fcn.010066cf
jmp 0x1002799
push edi
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x2e
push edi
call fcn.01006752
mov esi, dword [sym.imp.KERNEL32.dll_lstrcmpiA]
xor ebx, ebx
cmp eax, ebx
je 0x1002959
push 0x1001334
push eax
call esi
test eax, eax
jne 0x1002959
lea eax, [ebp - 0x108]
push eax
call fcn.0100672a
test eax, eax
jne 0x10027e6
push ebx
push 0x10
push ebx
lea eax, [ebp - 0x108]
push eax
push 0x525
jmp 0x10029e4
mov eax, dword [ebp - 0x614]
mov dword [ebp - 0x610], eax
push 0x1001330
lea eax, [ebp - 0x610]
push eax
call fcn.01001942
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
push 0x100b0ac
mov edi, eax
call esi
cmp edi, ebx
je 0x1002840
cmp byte [edi], bl
je 0x1002820
mov dword [ebp - 0x610], edi
push 0x100132c
lea eax, [ebp - 0x610]
push eax
call fcn.01001942
mov edi, dword [ebp - 0x610]
cmp byte [edi], bl
je 0x1002846
push edi
call esi
jmp 0x1002846
mov edi, dword [ebp - 0x610]
push 0x200
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
cmp eax, ebx
mov dword [ebp - 0x610], eax
je 0x10029da
cmp byte [edi], bl
mov esi, 0x100b0ac
mov eax, edi
jne 0x100286e
mov eax, esi
lea ecx, [ebp - 0x108]
push ecx
push ebx
push 0x1001324
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100ba60], eax
mov eax, dword [ebp - 0x618]
mov dword [eax], 1
lea eax, [ebp - 0x108]
push eax
push 8
push dword [ebp - 0x610]
push 0x1001271
push 0x1001318
push 0x1001310
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jbe 0x10028f3
or dword [0x100c494], 4
cmp byte [edi], bl
jne 0x10028c8
mov edi, esi
push edi
push dword [ebp + 0xc]
push dword [ebp - 0x61c]
call fcn.010021c4
lea eax, [ebp - 0x108]
push eax
push 0x200
push dword [ebp - 0x610]
call fcn.010021c4
jmp 0x1002a71
and dword [0x100c494], 0xfffffffb
cmp word [0x100ba64], bx
jne 0x1002922
push 0x104
lea eax, [ebp - 0x108]
push eax
push eax
mov dword [ebp - 0x614], 0x1001304
call dword [sym.imp.KERNEL32.dll_GetShortPathNameA]
jmp 0x100292c
mov dword [ebp - 0x614], 0x10012f4
cmp byte [edi], bl
jne 0x1002932
mov edi, esi
lea eax, [ebp - 0x108]
push eax
push edi
push dword [ebp - 0x614]
push 0x100b01c
push dword [ebp - 0x610]
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
jmp 0x1002a71
push 0x2e
push edi
call fcn.01006752
cmp eax, ebx
je 0x10029c2
push 0x10012ec
push eax
call esi
test eax, eax
jne 0x10029c2
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, 0x100b1e8
push edi
call esi
lea ecx, [ebp - 0x108]
push ecx
mov dword [ebp - 0x618], eax
call esi
mov ecx, dword [ebp - 0x618]
lea eax, [ecx + eax + 8]
push eax
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
cmp eax, ebx
mov dword [ebp - 0x610], eax
je 0x10029da
lea ecx, [ebp - 0x108]
push ecx
push edi
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x1002a71
mov esi, 0x400
push esi
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
cmp eax, ebx
mov dword [ebp - 0x610], eax
jne 0x10029f1
push ebx
push 0x10
push ebx
push ebx
push 0x4b5
push ebx
call fcn.01003ebe
xor eax, eax
jmp 0x1002a82
lea eax, [ebp - 0x108]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x1002a4b
test al, 0x10
jne 0x1002a4b
lea eax, [ebp - 0x108]
push eax
push esi
lea eax, [ebp - 0x60c]
push eax
call fcn.0100160f
mov edi, dword [ebp - 0x614]
cmp edi, ebx
je 0x1002a5e
cmp byte [edi], bl
je 0x1002a5e
push 0x100133c
push esi
lea eax, [ebp - 0x60c]
push eax
call fcn.010021e6
push edi
push esi
lea eax, [ebp - 0x60c]
push eax
call fcn.010021e6
jmp 0x1002a5e
push dword [ebp - 0x61c]
lea eax, [ebp - 0x60c]
push esi
push eax
call fcn.0100160f
push esi
push dword [ebp - 0x610]
lea eax, [ebp - 0x60c]
push eax
call fcn.01002589
mov eax, dword [ebp - 0x620]
mov ecx, dword [ebp - 0x610]
mov dword [eax], ecx
xor eax, eax
inc eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
pop ebx
call fcn.010064de
leave
ret 0x10