Function at 0x1002a3b
Capabilities:
Get file attributes
Read .ini file

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x620
mov eax, dword [0x100c2c4]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0x10]
push ebx
push esi
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.01001eb0
cmp byte [ebp - 0x20c], 0x22
jne 0x1002a97
lea eax, [ebp - 0x20b]
push 0x10013bc
jmp 0x1002aa2
lea eax, [ebp - 0x20c]
push 0x10013b8
mov dword [ebp - 0x610], eax
lea eax, [ebp - 0x610]
push eax
call fcn.01001a6b
mov ebx, dword [ebp - 0x610]
push ebx
mov dword [ebp - 0x614], eax
call fcn.01001be3
test eax, eax
lea eax, [ebp - 0x108]
jne 0x1002aec
push 0x100d2a4
push esi
push eax
call fcn.01001eb0
push ebx
push esi
lea eax, [ebp - 0x108]
push eax
call fcn.01007480
jmp 0x1002af4
push ebx
push esi
push eax
call fcn.01001eb0
push 0x2e
push ebx
call fcn.01007503
mov esi, dword [sym.imp.KERNEL32.dll_CompareStringA]
or edi, 0xffffffff
test eax, eax
je 0x1002ccf
push edi
push 0x10013b0
push edi
push eax
push 1
push 0x7f
call esi
dec eax
dec eax
jne 0x1002ccf
lea eax, [ebp - 0x108]
push eax
call fcn.010074db
test eax, eax
jne 0x1002b50
push eax
push 0x10
push eax
lea ecx, [ebp - 0x108]
push ecx
push 0x525
push eax
call fcn.010037c2
xor eax, eax
jmp 0x1002df8
mov eax, dword [ebp - 0x614]
mov dword [ebp - 0x610], eax
push 0x10013ac
lea eax, [ebp - 0x610]
push eax
call fcn.01001a6b
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ebx, 0x100c0a4
push ebx
mov edi, eax
call esi
test edi, edi
je 0x1002bad
cmp byte [edi], 0
je 0x1002b8c
mov dword [ebp - 0x610], edi
push 0x10013a8
lea eax, [ebp - 0x610]
push eax
call fcn.01001a6b
mov edi, dword [ebp - 0x610]
cmp byte [edi], 0
je 0x1002bb3
push edi
call esi
jmp 0x1002bb3
mov edi, dword [ebp - 0x610]
mov esi, 0x200
push esi
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
xor ecx, ecx
mov dword [ebp - 0x610], eax
cmp eax, ecx
jne 0x1002bdd
push ecx
push 0x10
push ecx
push ecx
push 0x4b5
push ecx
jmp 0x1002b44
mov eax, edi
cmp byte [edi], cl
jne 0x1002be5
mov eax, ebx
lea edx, [ebp - 0x108]
push edx
push ecx
push 0x10013a0
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100d0c8], eax
mov eax, dword [ebp - 0x618]
mov dword [eax], 1
lea eax, [ebp - 0x108]
push eax
push 8
push dword [ebp - 0x610]
push 0x10012e1
push 0x1001394
push 0x100138c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jbe 0x1002c67
or dword [0x100daf4], 4
cmp byte [edi], 0
jne 0x1002c40
mov edi, ebx
push edi
push dword [ebp + 0xc]
push dword [ebp - 0x61c]
call fcn.01001eb0
lea eax, [ebp - 0x108]
push eax
push esi
push dword [ebp - 0x610]
call fcn.01001eb0
jmp 0x1002de7
and dword [0x100daf4], 0xfffffffb
cmp word [0x100d0cc], 0
jne 0x1002c97
push 0x104
lea eax, [ebp - 0x108]
push eax
push eax
mov dword [ebp - 0x614], 0x1001380
call dword [sym.imp.KERNEL32.dll_GetShortPathNameA]
jmp 0x1002ca1
mov dword [ebp - 0x614], 0x1001370
cmp byte [edi], 0
jne 0x1002ca8
mov edi, ebx
lea eax, [ebp - 0x108]
push eax
push edi
push dword [ebp - 0x614]
push 0x100c014
push esi
push dword [ebp - 0x610]
call fcn.01001f43
add esp, 0x18
jmp 0x1002de7
push 0x2e
push ebx
call fcn.01007503
xor ebx, ebx
cmp eax, ebx
je 0x1002d50
push edi
push 0x1001368
push edi
push eax
push 1
push 0x7f
call esi
dec eax
dec eax
jne 0x1002d50
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, str.Command.com__c__s
push edi
call esi
lea ecx, [ebp - 0x108]
push ecx
mov dword [ebp - 0x618], eax
call esi
mov ecx, dword [ebp - 0x618]
lea esi, [ecx + eax + 8]
push esi
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov dword [ebp - 0x610], eax
cmp eax, ebx
jne 0x1002d39
push ebx
push 0x10
push ebx
push ebx
push 0x4b5
push ebx
jmp 0x1002b44
lea ecx, [ebp - 0x108]
push ecx
push edi
push esi
push eax
call fcn.01001f43
add esp, 0x10
jmp 0x1002de7
mov esi, 0x400
push esi
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov dword [ebp - 0x610], eax
cmp eax, ebx
je 0x1002d29
lea eax, [ebp - 0x108]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, edi
je 0x1002dc1
test al, 0x10
jne 0x1002dc1
lea eax, [ebp - 0x108]
push eax
push esi
lea eax, [ebp - 0x60c]
push eax
call fcn.01001eb0
mov edi, dword [ebp - 0x614]
cmp edi, ebx
je 0x1002dd4
cmp byte [edi], bl
je 0x1002dd4
push 0x10013b8
push esi
lea eax, [ebp - 0x60c]
push eax
call fcn.01001eea
push edi
push esi
lea eax, [ebp - 0x60c]
push eax
call fcn.01001eea
jmp 0x1002dd4
push dword [ebp - 0x61c]
lea eax, [ebp - 0x60c]
push esi
push eax
call fcn.01001eb0
push esi
push dword [ebp - 0x610]
lea eax, [ebp - 0x60c]
push eax
call fcn.01002901
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
xor ecx, ebp
pop ebx
call fcn.01006b07
leave
ret 0x10