Function at 0x10061550
Capabilities:
Check if file exists

Disassembly:
push 0x22c
mov eax, 0x10112891
call fcn.1006051e
mov eax, dword [0x10192670]
xor ebx, ebx
test eax, eax
je 0x100617ea
mov ecx, dword [eax]
lea edx, [ebp - 0x230]
and dword [ebp - 0x230], ebx
push edx
push eax
call dword [ecx + 0x18]
mov edi, dword [ebp - 0x230]
mov dword [ebp - 0x234], edi
and dword [ebp - 4], ebx
test edi, edi
je 0x100617dc
lea eax, [ebp - 0x234]
push eax
lea ecx, [ebp - 0x238]
call fcn.10002214
mov byte [ebp - 4], 1
mov esi, dword [ebp - 0x238]
test esi, esi
je 0x100617ce
lea eax, [ebp - 0x228]
push eax
call fcn.1009d3ef
mov byte [ebp - 4], 2
lea eax, [ebp - 0x224]
mov ecx, dword [ebp - 0x228]
lea edx, [ebp - 0x220]
and dword [ebp - 0x220], ebx
and dword [ebp - 0x224], ebx
push eax
call fcn.1006fbe6
pop ecx
test eax, eax
je 0x100617f2
push dword [ebp - 0x228]
mov ebx, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
call ebx
test eax, eax
je 0x100617f2
mov eax, dword [ebp - 0x220]
mov edx, 0xd0000
mov ecx, dword [ebp - 0x224]
mov dword [0x10190d70], eax
mov dword [0x10190d6c], ecx
cmp eax, edx
ja 0x10061641
jne 0x100617f2
cmp ecx, 0x3e9
jb 0x100617f2
push ecx
mov ecx, esp
mov dword [ebp - 0x22c], esp
push dword [ebp - 0x228]
call fcn.10002727
mov byte [ebp - 4], 3
mov ecx, esi
mov byte [ebp - 4], 2
call fcn.100021d8
lea eax, [ebp - 0x21c]
push eax
call fcn.1009d480
xor eax, eax
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x21c]
lea edx, [ebp - 0x220]
mov dword [ebp - 0x22c], eax
mov dword [ebp - 0x220], eax
mov dword [ebp - 0x224], eax
lea eax, [ebp - 0x224]
push eax
call fcn.1006fbe6
pop ecx
test eax, eax
je 0x100616e5
push dword [ebp - 0x21c]
call ebx
test eax, eax
je 0x100616e5
mov eax, dword [ebp - 0x220]
mov edx, 0xd0000
mov ecx, dword [ebp - 0x224]
mov dword [0x10190d68], eax
mov dword [0x10190d64], ecx
cmp eax, edx
ja 0x100616db
jne 0x100616e5
cmp ecx, 0x3e9
jb 0x100616e5
mov dword [ebp - 0x22c], 1
and dword [ebp - 0x220], 0
lea eax, [ebp - 0x218]
and dword [ebp - 0x224], 0
push 0x208
push 0
push eax
call fcn.1003e610
pop ecx
pop ecx
push dword [ebp - 0x21c]
mov edx, 0x104
push ecx
lea ecx, [ebp - 0x218]
call fcn.10060ad8
push 0x101324c8
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
lea eax, [ebp - 0x224]
push eax
lea edx, [ebp - 0x220]
lea ecx, [ebp - 0x218]
call fcn.1006fbe6
cmp dword [ebp - 0x22c], 0
pop ecx
jne 0x1006178c
mov ecx, dword [ebp - 0x21c]
call fcn.1006fec1
mov ecx, dword [0x10192670]
test ecx, ecx
je 0x10061779
and dword [0x10192670], 0
test ecx, ecx
je 0x10061779
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov ecx, dword [ebp - 0x21c]
lea ecx, [ecx - 0x10]
call fcn.10002a86
jmp 0x10061818
push ecx
mov ecx, esp
mov dword [ebp - 0x22c], esp
push dword [ebp - 0x21c]
call fcn.10002727
mov byte [ebp - 4], 5
mov ecx, esi
mov byte [ebp - 4], 4
call fcn.10002177
mov ecx, dword [ebp - 0x21c]
xor ebx, ebx
inc ebx
lea ecx, [ecx - 0x10]
call fcn.10002a86
mov ecx, dword [ebp - 0x228]
lea ecx, [ecx - 0x10]
call fcn.10002a86
mov byte [ebp - 4], 0
test esi, esi
je 0x100617dc
mov eax, dword [esi]
push esi
call dword [eax + 8]
or dword [ebp - 4], 0xffffffff
test edi, edi
je 0x100617ea
mov ecx, dword [edi]
push edi
call dword [ecx + 8]
mov eax, ebx
call fcn.100604c8
ret
mov ecx, dword [ebp - 0x228]
call fcn.1006fec1
mov ecx, dword [0x10192670]
test ecx, ecx
je 0x10061818
and dword [0x10192670], 0
test ecx, ecx
je 0x10061818
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov ecx, dword [ebp - 0x228]
lea ecx, [ecx - 0x10]
call fcn.10002a86
mov byte [ebp - 4], 0
mov eax, dword [esi]
push esi
call dword [eax + 8]
or dword [ebp - 4], 0xffffffff
mov eax, dword [edi]
push edi
call dword [eax + 8]
xor eax, eax
jmp 0x100617ec