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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x610
push ebx
push esi
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpyA]
push edi
push dword [ebp + 8]
lea eax, [ebp - 0x210]
push eax
call esi
cmp byte [ebp - 0x210], 0x22
jne 0x100236b
lea eax, [ebp - 0x20f]
push 0x1001328
jmp 0x1002376
lea eax, [ebp - 0x210]
push 0x1001324
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
call fcn.01001878
mov edi, dword [ebp - 4]
push edi
mov dword [ebp - 8], eax
call fcn.01001de1
test eax, eax
lea eax, [ebp - 0x10c]
jne 0x10023af
push 0x100ac44
push eax
call esi
push edi
lea eax, [ebp - 0x10c]
push eax
call fcn.01005c3d
jmp 0x10023b3
push edi
push eax
call esi
push 0x2e
push edi
call fcn.01005cf3
test eax, eax
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcmpiA]
je 0x1002549
push 0x100131c
push eax
call ebx
test eax, eax
jne 0x1002549
lea eax, [ebp - 0x10c]
push eax
call fcn.01005cd5
test eax, eax
jne 0x10023ff
push eax
push 0x10
push eax
lea ecx, [ebp - 0x10c]
push ecx
push 0x525
push eax
jmp 0x10025cc
mov eax, dword [ebp - 8]
mov dword [ebp - 4], eax
push 0x1001318
lea eax, [ebp - 4]
push eax
call fcn.01001878
mov ebx, dword [sym.imp.KERNEL32.dll_lstrlenA]
push 0x100a0a4
mov edi, eax
call ebx
test edi, edi
je 0x1002449
cmp byte [edi], 0
je 0x100242e
mov dword [ebp - 4], edi
push 0x1001314
lea eax, [ebp - 4]
push eax
call fcn.01001878
mov edi, dword [ebp - 4]
cmp byte [edi], 0
je 0x100244c
push edi
call ebx
jmp 0x100244c
mov edi, dword [ebp - 4]
push 0x200
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
xor ecx, ecx
cmp eax, ecx
mov dword [ebp - 4], eax
jne 0x1002472
push ecx
push 0x10
push ecx
push ecx
push 0x4b5
push ecx
jmp 0x10025cc
cmp byte [edi], 0
mov ebx, 0x100a0a4
mov eax, edi
jne 0x1002480
mov eax, ebx
lea ecx, [ebp - 0x10c]
push ecx
push 0
push 0x100130c
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100aa60], eax
mov eax, dword [ebp + 0x10]
mov dword [eax], 1
lea eax, [ebp - 0x10c]
push eax
push 8
push dword [ebp - 4]
push 0x1001251
push 0x1001300
push 0x10012f8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jbe 0x10024ed
or dword [0x100b494], 4
cmp byte [edi], 0
jne 0x10024d6
mov edi, ebx
push edi
push dword [ebp + 8]
call esi
lea eax, [ebp - 0x10c]
push eax
push dword [ebp - 4]
call esi
jmp 0x1002639
and dword [0x100b494], 0xfffffffb
cmp word [0x100aa64], 0
jne 0x100251e
push 0x104
lea eax, [ebp - 0x10c]
push eax
lea eax, [ebp - 0x10c]
push eax
mov esi, 0x10012ec
call dword [sym.imp.KERNEL32.dll_GetShortPathNameA]
jmp 0x1002523
mov esi, 0x10012dc
cmp byte [edi], 0
jne 0x100252a
mov edi, ebx
lea eax, [ebp - 0x10c]
push eax
push edi
push esi
push 0x100a014
push dword [ebp - 4]
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
jmp 0x1002639
push 0x2e
push edi
call fcn.01005cf3
xor edi, edi
cmp eax, edi
je 0x10025ad
push 0x10012d4
push eax
call ebx
test eax, eax
jne 0x10025ad
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, str.Command.com__c__s
push edi
call esi
mov ebx, eax
lea eax, [ebp - 0x10c]
push eax
call esi
lea eax, [ebx + eax + 8]
push eax
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
xor ecx, ecx
cmp eax, ecx
mov dword [ebp - 4], eax
je 0x1002462
lea ecx, [ebp - 0x10c]
push ecx
push edi
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x1002639
push 0x400
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
cmp eax, edi
mov dword [ebp - 4], eax
jne 0x10025d5
push edi
push 0x10
push edi
push edi
push 0x4b5
push edi
call fcn.01003943
xor eax, eax
jmp 0x1002644
lea eax, [ebp - 0x10c]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x100261e
test al, 0x10
jne 0x100261e
lea eax, [ebp - 0x10c]
push eax
lea eax, [ebp - 0x610]
push eax
call esi
mov ebx, dword [ebp - 8]
cmp ebx, edi
je 0x100262a
cmp byte [ebx], 0
je 0x100262a
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0x1001324
lea eax, [ebp - 0x610]
push eax
call esi
push ebx
jmp 0x1002621
push dword [ebp + 8]
lea eax, [ebp - 0x610]
push eax
call esi
push dword [ebp - 4]
lea eax, [ebp - 0x610]
push eax
call fcn.01002233
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 4]
mov dword [eax], ecx
xor eax, eax
inc eax
pop edi
pop esi
pop ebx
leave
ret 0xc