Function at 0x10045f16
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100ef23d
mov eax, dword fs:[0]
push eax
mov eax, 0x2088
call fcn.100821b0
mov eax, dword [0x1012931c]
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 eax, ecx
mov dword [ebp - 0x208c], eax
lea esi, [eax + 4]
cmp dword [esi + 0x14], 8
mov eax, esi
jb 0x10045f5d
mov eax, dword [esi]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x100461b7
cmp dword [esi + 0x14], 8
jb 0x10045f74
mov esi, dword [esi]
push 0x100faff4
push esi
call fcn.100c337f
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x100461b7
push str..ACP
xor ebx, ebx
push ebx
call fcn.100cbd27
push 0x2000
lea eax, [ebp - 0x2010]
push ebx
push eax
call fcn.100a25c0
lea eax, [ebp - 0x2010]
push eax
push 0x100fb000
push esi
call fcn.10047d42
add esp, 0x20
jmp 0x100461a7
xor eax, eax
mov dword [ebp - 0x2018], ebx
mov word [ebp - 0x2028], ax
lea ecx, [ebp - 0x2028]
lea eax, [ebp - 0x2010]
mov dword [ebp - 0x2014], 7
push eax
call fcn.10022050
xor eax, eax
mov dword [ebp - 4], ebx
mov dword [ebp - 0x2048], ebx
mov dword [ebp - 0x2044], 7
mov word [ebp - 0x2058], ax
mov dword [ebp - 0x2030], ebx
mov dword [ebp - 0x202c], 7
mov word [ebp - 0x2040], ax
push ebx
push 0x100fb008
lea ecx, [ebp - 0x2028]
mov byte [ebp - 4], 2
call fcn.10046b7c
mov edi, eax
cmp edi, 0xffffffff
jne 0x10046067
lea ecx, [ebp - 0x2040]
call fcn.10001ee0
lea ecx, [ebp - 0x2058]
call fcn.10001ee0
or dword [ebp - 4], edi
lea ecx, [ebp - 0x2028]
call fcn.10001ee0
jmp 0x10046192
inc edi
lea ecx, [ebp - 0x2028]
push edi
push 0x100fb00c
call fcn.10046b7c
mov ebx, eax
cmp ebx, 0xffffffff
je 0x1004616b
and dword [ebp - 0x2060], 0
lea ecx, [ebp - 0x2070]
xor eax, eax
mov dword [ebp - 0x205c], 7
mov word [ebp - 0x2070], ax
mov eax, ebx
sub eax, edi
push eax
push edi
lea eax, [ebp - 0x2028]
push eax
call fcn.100376ef
lea eax, [ebp - 0x2070]
push eax
lea ecx, [ebp - 0x2058]
call fcn.10001fe0
lea ecx, [ebp - 0x2070]
call fcn.10001ee0
and dword [ebp - 0x2060], 0
lea ecx, [ebp - 0x2070]
xor eax, eax
mov dword [ebp - 0x205c], 7
mov word [ebp - 0x2070], ax
lea eax, [ebx + 1]
push 0xffffffffffffffff
push eax
lea eax, [ebp - 0x2028]
push eax
call fcn.100376ef
lea eax, [ebp - 0x2070]
push eax
lea ecx, [ebp - 0x2040]
call fcn.10001fe0
lea ecx, [ebp - 0x2070]
call fcn.10001ee0
lea eax, [ebp - 0x2040]
push eax
lea eax, [ebp - 0x2058]
push eax
lea ecx, [ebp - 0x2088]
call fcn.10044318
mov ecx, dword [ebp - 0x208c]
push eax
lea eax, [ebp - 0x2094]
mov byte [ebp - 4], 3
push eax
lea ecx, [ecx + 0x34]
call fcn.10044eca
lea ecx, [ebp - 0x2070]
call fcn.10001ee0
lea ecx, [ebp - 0x2088]
call fcn.10001ee0
lea ecx, [ebp - 0x2040]
call fcn.10001ee0
lea ecx, [ebp - 0x2058]
call fcn.10001ee0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2028]
call fcn.10001ee0
xor ebx, ebx
lea eax, [ebp - 0x2010]
push eax
push 0x100fb000
push esi
call fcn.10047d42
add esp, 0xc
cmp eax, 0xffffffff
jne 0x10045fc4
push esi
call fcn.100b6c97
pop ecx
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.10081454
leave
ret