Function at 0x1003c5a0
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100fdeb1
mov eax, dword fs:[0]
push eax
sub esp, 0x228
mov eax, dword [0x1014f644]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov ebx, dword [ebp + 0x14]
cmp dword [ebx + 0x14], 8
mov edi, dword [ebp + 0x10]
mov esi, dword [ebp + 0xc]
mov dword [ebp - 0x190], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x194], ecx
mov dword [ebp - 0x18c], edx
mov dword [ebp - 0x184], edi
mov dword [ebp - 0x198], eax
jb 0x1003c605
mov eax, dword [ebx]
jmp 0x1003c607
mov eax, ebx
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1003c750
cmp dword [edi + 0x14], 8
jb 0x1003c61e
mov edi, dword [edi]
push edi
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1003c750
mov ecx, esi
lea esi, [ebp - 0x4c]
call fcn.1003ac20
xor esi, esi
lea edi, [ebp - 0xa0]
lea edx, [ebp - 0x4c]
mov dword [ebp - 4], esi
call fcn.100410c0
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 1
call fcn.10040fc0
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 2
call fcn.1003d4d0
lea ecx, [ebp - 0x30]
push ecx
mov byte [ebp - 4], 3
call fcn.1003d510
add esp, 4
mov edi, 8
cmp dword [ebp - 0x70], edi
jb 0x1003c691
mov edx, dword [ebp - 0x84]
push edx
call fcn.100719b6
add esp, 4
xor eax, eax
mov dword [ebp - 0x70], 7
mov dword [ebp - 0x74], esi
mov word [ebp - 0x84], ax
cmp dword [ebp - 0xfc], edi
jb 0x1003c6bb
mov ecx, dword [ebp - 0x110]
push ecx
call fcn.100719b6
add esp, 4
xor edx, edx
mov dword [ebp - 0xfc], 7
mov dword [ebp - 0x100], esi
mov word [ebp - 0x110], dx
mov byte [ebp - 4], 7
cmp dword [ebp - 0x8c], 0x10
jb 0x1003c6f0
mov eax, dword [ebp - 0xa0]
push eax
call fcn.100719b6
add esp, 4
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x8c], 0xf
mov dword [ebp - 0x90], esi
mov byte [ebp - 0xa0], 0
cmp dword [ebp - 0x1c], edi
jae 0x1003c712
lea eax, [ebp - 0x30]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x1003c757
cmp dword [ebp - 0x1c], edi
jb 0x1003c72e
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.100719b6
add esp, 4
xor edx, edx
cmp dword [ebp - 0x38], 0x10
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], esi
mov word [ebp - 0x30], dx
jb 0x1003c750
mov eax, dword [ebp - 0x4c]
push eax
call fcn.100719b6
add esp, 4
xor al, al
jmp 0x1003cac1
lea ecx, [ebp - 0x234]
push ecx
call fcn.10020b20
lea ecx, [ebp - 0x180]
lea eax, [ebp - 0x4c]
mov byte [ebp - 4], 8
call fcn.10040fc0
lea edx, [ebp - 0x12c]
push edx
mov ecx, eax
mov byte [ebp - 4], 9
call fcn.10041f90
add esp, 4
mov edi, eax
lea edx, [ebp - 0x164]
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xa
call fcn.10041510
lea esi, [ebp - 0x148]
mov byte [ebp - 4], 0xb
call fcn.10041e30
mov esi, eax
push ebx
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0xc
call fcn.1003d000
add esp, 4
mov ebx, eax
mov eax, dword [ebp - 0x184]
push eax
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0xd
call fcn.1003d000
add esp, 4
mov dword [ebp - 0x188], eax
lea ecx, [ebp - 0x30]
push ecx
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 0xe
call fcn.1003d000
add esp, 4
push edi
push ecx
push 0x10152a84
mov edx, dword [ebp - 0x198]
push ecx
push esi
push ecx
push 0x10152a84
push ecx
push edx
mov edx, dword [ebp - 0x194]
push ecx
push 0x10152a84
push ecx
mov ecx, dword [ebp - 0x18c]
push ecx
push ecx
push 0x10152a84
push ecx
push edx
push ecx
push 0x10152a84
push ecx
mov ecx, dword [ebp - 0x190]
push ecx
push ecx
push 0x10152a84
push ecx
push ebx
push ecx
mov byte [ebp - 4], 0xf
push 0x10152a84
mov edx, dword [ebp - 0x188]
push ecx
push edx
push ecx
push 0x10152a84
push ecx
push eax
lea eax, [ebp - 0x234]
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
add esp, 0xc
push eax
call fcn.1003d550
mov edi, 8
add esp, 8
cmp dword [ebp - 0xa8], edi
jb 0x1003c917
mov ecx, dword [ebp - 0xbc]
push ecx
call fcn.100719b6
add esp, 4
xor esi, esi
xor edx, edx
mov ebx, 7
mov dword [ebp - 0xa8], ebx
mov dword [ebp - 0xac], esi
mov word [ebp - 0xbc], dx
cmp dword [ebp - 0xc4], edi
jb 0x1003c94a
mov eax, dword [ebp - 0xd8]
push eax
call fcn.100719b6
add esp, 4
xor ecx, ecx
mov dword [ebp - 0xc4], ebx
mov dword [ebp - 0xc8], esi
mov word [ebp - 0xd8], cx
cmp dword [ebp - 0xe0], edi
jb 0x1003c976
mov edx, dword [ebp - 0xf4]
push edx
call fcn.100719b6
add esp, 4
xor eax, eax
mov dword [ebp - 0xe0], ebx
mov dword [ebp - 0xe4], esi
mov word [ebp - 0xf4], ax
cmp dword [ebp - 0x134], edi
jb 0x1003c9a2
mov ecx, dword [ebp - 0x148]
push ecx
call fcn.100719b6
add esp, 4
xor edx, edx
cmp dword [ebp - 0x150], 0x10
mov dword [ebp - 0x134], ebx
mov dword [ebp - 0x138], esi
mov word [ebp - 0x148], dx
jb 0x1003c9cf
mov eax, dword [ebp - 0x164]
push eax
call fcn.100719b6
add esp, 4
mov dword [ebp - 0x150], 0xf
mov dword [ebp - 0x154], esi
mov byte [ebp - 0x164], 0
cmp dword [ebp - 0x118], edi
jb 0x1003c9fd
mov ecx, dword [ebp - 0x12c]
push ecx
call fcn.100719b6
add esp, 4
xor edx, edx
mov byte [ebp - 4], 8
mov dword [ebp - 0x118], ebx
mov dword [ebp - 0x11c], esi
mov word [ebp - 0x12c], dx
cmp dword [ebp - 0x16c], edi
jb 0x1003ca2d
mov eax, dword [ebp - 0x180]
push eax
call fcn.100719b6
add esp, 4
lea esi, [ebp - 0x68]
lea eax, [ebp - 0x234]
call fcn.10020c00
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x68]
cmp dword [ebp - 0x54], edi
jae 0x1003ca49
mov eax, esi
push eax
push str.command:__s
call fcn.1000adb0
mov esi, eax
call fcn.10011d70
mov edi, dword [ebp - 0x184]
add esp, 8
lea eax, [ebp - 0x68]
call fcn.1003cba0
lea ecx, [ebp - 0x68]
test al, al
jne 0x1003ca9b
call fcn.10007320
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 7
call fcn.10020150
lea ecx, [ebp - 0x30]
call fcn.10007320
lea esi, [ebp - 0x4c]
call fcn.100317d0
xor al, al
jmp 0x1003cac1
call fcn.10007320
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 7
call fcn.10020150
lea ecx, [ebp - 0x30]
call fcn.10007320
lea esi, [ebp - 0x4c]
call fcn.100317d0
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.100719c1
mov esp, ebp
pop ebp
ret 0x14