Function at 0x40efb0
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x498d1b
mov eax, dword fs:[0]
push eax
sub esp, 0xc0
mov eax, dword [0x4cb070]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov eax, dword [ebp + 8]
cmp esi, eax
je 0x40eff1
push 0xffffffffffffffff
push 0
push eax
call fcn.0040a610
cmp dword [esi + 0x14], 8
jb 0x40effb
mov eax, dword [esi]
jmp 0x40effd
mov eax, esi
push eax
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
mov edx, eax
mov dword [ebp - 0x38], 7
xor eax, eax
mov dword [ebp - 0x3c], 0
mov word [ebp - 0x4c], ax
cmp word [edx], ax
jne 0x40f023
xor ecx, ecx
jmp 0x40f03f
mov ecx, edx
lea edi, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40f030
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x4c]
call fcn.0040a9c0
mov dword [ebp - 4], 0
cmp dword [esi + 0x14], 8
jb 0x40f05a
mov eax, dword [esi]
jmp 0x40f05c
mov eax, esi
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x40f0e2
push 0x4af450
lea edx, [ebp - 0x4c]
lea ecx, [ebp - 0x94]
call fcn.00403070
add esp, 4
mov edi, eax
add esi, 0x18
cmp esi, edi
je 0x40f0c0
mov eax, dword [esi + 0x14]
cmp eax, 8
jb 0x40f099
inc eax
mov ecx, esi
push eax
push dword [esi]
call fcn.0040aba0
mov dword [esi + 0x14], 7
cmp dword [esi + 0x14], 8
mov dword [esi + 0x10], 0
jb 0x40f0b1
mov eax, dword [esi]
jmp 0x40f0b3
mov eax, esi
xor ecx, ecx
mov word [eax], cx
mov ecx, esi
push edi
call fcn.0040a380
mov eax, dword [ebp - 0x80]
cmp eax, 8
jb 0x40f0db
inc eax
lea ecx, [ebp - 0x94]
push eax
push dword [ebp - 0x94]
call fcn.0040aba0
xor bl, bl
jmp 0x40f478
cmp dword [esi + 0x14], 8
jb 0x40f0ec
mov eax, dword [esi]
jmp 0x40f0ee
mov eax, esi
push eax
call dword [sym.imp.SHLWAPI.dll_PathFindExtensionW]
mov edx, eax
mov dword [ebp - 0x20], 7
xor eax, eax
mov dword [ebp - 0x24], 0
mov word [ebp - 0x34], ax
cmp word [edx], ax
jne 0x40f114
xor ecx, ecx
jmp 0x40f12f
mov ecx, edx
lea edi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40f120
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0040a9c0
mov byte [ebp - 4], 2
cmp dword [ebp - 0x24], 0
jne 0x40f1be
push 0x4af460
lea edx, [ebp - 0x4c]
lea ecx, [ebp - 0x94]
call fcn.00403070
add esp, 4
mov edi, eax
add esi, 0x18
cmp esi, edi
je 0x40f19c
mov eax, dword [esi + 0x14]
cmp eax, 8
jb 0x40f175
inc eax
mov ecx, esi
push eax
push dword [esi]
call fcn.0040aba0
mov dword [esi + 0x14], 7
cmp dword [esi + 0x14], 8
mov dword [esi + 0x10], 0
jb 0x40f18d
mov eax, dword [esi]
jmp 0x40f18f
mov eax, esi
xor ecx, ecx
mov word [eax], cx
mov ecx, esi
push edi
call fcn.0040a380
mov eax, dword [ebp - 0x80]
cmp eax, 8
jb 0x40f1fe
inc eax
lea ecx, [ebp - 0x94]
push eax
push dword [ebp - 0x94]
call fcn.0040aba0
xor bl, bl
jmp 0x40f44f
mov ecx, esi
call fcn.0040f580
test al, al
jne 0x40f205
mov ecx, esi
call fcn.0040f6b0
test al, al
jne 0x40f205
push 0x4af460
lea edx, [ebp - 0x4c]
lea ecx, [ebp - 0x94]
call fcn.00403070
add esp, 4
lea ecx, [esi + 0x18]
push eax
call fcn.00402a80
lea ecx, [ebp - 0x94]
call fcn.0040ac70
xor bl, bl
jmp 0x40f44f
mov ecx, esi
call fcn.0040f6b0
test al, al
lea ecx, [ebp - 0x64]
sete bl
call fcn.0040f4b0
mov byte [ebp - 4], 4
test bl, bl
je 0x40f255
push 0x4aed50
lea ecx, [ebp - 0x64]
call fcn.00403520
test eax, eax
je 0x40f255
push 0x4aed50
call dword [sym.imp.WINSPOOL.DRV_Ordinal_204]
test eax, eax
jne 0x40f255
push 0x4af474
lea ecx, [esi + 0x18]
call fcn.0040c450
xor bl, bl
jmp 0x40f426
mov ecx, str.printto
test bl, bl
mov eax, str.print
cmove eax, ecx
lea ecx, [ebp - 0x94]
push eax
call fcn.00402b00
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x34]
mov ecx, esi
push eax
call fcn.0040f7d0
mov byte [ebp - 4], 4
mov edi, eax
mov ecx, dword [ebp - 0x80]
cmp ecx, 8
jb 0x40f2a7
inc ecx
push ecx
push dword [ebp - 0x94]
lea ecx, [ebp - 0x94]
call fcn.0040aba0
xor eax, eax
mov dword [ebp - 0x80], 7
mov dword [ebp - 0x84], 0
mov word [ebp - 0x94], ax
test edi, edi
jne 0x40f2f6
push 0x4af48c
lea edx, [ebp - 0x4c]
lea ecx, [ebp - 0x94]
call fcn.00403070
add esp, 4
lea ecx, [esi + 0x18]
push eax
call fcn.00402a80
lea ecx, [ebp - 0x94]
call fcn.0040ac70
xor bl, bl
jmp 0x40f426
mov dword [ebp - 0xbc], eax
lea ecx, [ebp - 0xcc]
xor eax, eax
mov dword [ebp - 0xb8], 7
push 0xffffffffffffffff
push eax
xorps xmm0, xmm0
mov word [ebp - 0xcc], ax
push esi
movq qword [ebp - 0x1c], xmm0
call fcn.0040a610
push 0x4aed50
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 6
call fcn.00402b00
mov byte [ebp - 4], 7
lea eax, [ebp - 0x9c]
mov byte [ebp - 0x98], 0
lea ecx, [ebp - 0x1c]
push dword [ebp - 0x98]
mov dword [ebp - 0x1c], 0
push eax
lea eax, [ebp - 0xcc]
mov dword [ebp - 0x18], 0
push eax
mov dword [ebp - 0x14], 0
call fcn.00410fa0
push fcn.0040ac70
push 2
push 0x18
lea eax, [ebp - 0xcc]
mov byte [ebp - 4], 9
push eax
call fcn.00459f47
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
lea eax, [ebp - 0x7c]
push eax
call fcn.00410160
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0xa
call fcn.004456e0
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x7c]
cmp dword [ebp - 0x68], 8
cmovae eax, dword [ebp - 0x7c]
cmp dword [edi + 0x14], 8
jb 0x40f3c4
mov edi, dword [edi]
sub esp, 8
push eax
push edi
call fcn.00445c50
test eax, eax
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x9c]
setne bl
call fcn.004029e0
test bl, bl
je 0x40f414
push 0x4af48c
lea edx, [ebp - 0x4c]
lea ecx, [ebp - 0x94]
call fcn.00403070
add esp, 4
lea ecx, [esi + 0x18]
push eax
call fcn.00402a80
lea ecx, [ebp - 0x94]
call fcn.0040ac70
xor bl, bl
jmp 0x40f416
mov bl, 1
lea ecx, [ebp - 0x7c]
call fcn.0040ac70
lea ecx, [ebp - 0x1c]
call fcn.00410750
mov eax, dword [ebp - 0x50]
cmp eax, 8
jb 0x40f43b
inc eax
lea ecx, [ebp - 0x64]
push eax
push dword [ebp - 0x64]
call fcn.0040aba0
xor eax, eax
mov dword [ebp - 0x50], 7
mov dword [ebp - 0x54], 0
mov word [ebp - 0x64], ax
mov eax, dword [ebp - 0x20]
cmp eax, 8
jb 0x40f464
inc eax
lea ecx, [ebp - 0x34]
push eax
push dword [ebp - 0x34]
call fcn.0040aba0
xor eax, eax
mov dword [ebp - 0x20], 7
mov dword [ebp - 0x24], 0
mov word [ebp - 0x34], ax
mov ecx, dword [ebp - 0x38]
cmp ecx, 8
jb 0x40f48d
inc ecx
push ecx
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x4c]
call fcn.0040aba0
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00459a5d
mov esp, ebp
pop ebp
ret 4