Function at 0x1000b5c3
Capabilities:
Check if file exists
Get file attributes

Disassembly:
mov eax, 0x10053a84
call fcn.10052270
sub esp, 0x2b4
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
xor ebx, ebx
xor edi, edi
and byte [ebp - 0x28], 0
mov byte [ebp - 0x18], 1
and byte [ebp - 0x30], 0
mov dword [ebp - 0x1c], ebx
mov eax, dword [ebp + 0x10]
mov dword [eax], ebx
mov eax, dword [ebp + 0x14]
mov dword [eax], ebx
mov esi, dword [ebp + 8]
cmp esi, ebx
jne 0x1000b606
cmp dword [ebp + 0xc], ebx
je 0x1000b75f
mov dword [ebp - 0x24], ebx
mov dword [ebp - 4], ebx
cmp esi, ebx
jne 0x1000b766
push dword [ebp + 0xc]
call dword [sym.imp.SHLWAPI.dll_StrDupW]
mov esi, eax
mov dword [ebp - 0x24], esi
mov dword [ebp + 0xc], esi
mov dword [ebp + 8], esi
mov edi, esi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x244], esi
cmp word [esi], 0x22
jne 0x1000b671
and byte [ebp - 0x18], 0
add esi, 2
mov dword [ebp - 0x244], esi
mov dword [ebp + 8], esi
mov ax, word [esi]
cmp ax, bx
je 0x1000b69f
cmp ax, 0x22
jne 0x1000b662
mov edi, esi
mov dword [ebp - 0x2c], edi
mov byte [ebp - 0x34], 1
jmp 0x1000b69f
inc esi
inc esi
mov dword [ebp - 0x244], esi
mov edi, esi
mov dword [ebp - 0x2c], edi
jmp 0x1000b649
mov eax, dword [ebp + 0xc]
mov dword [ebp + 8], eax
mov ax, word [esi]
cmp ax, bx
je 0x1000b69f
cmp ax, 0x20
je 0x1000b69a
cmp ax, 9
je 0x1000b69a
inc esi
inc esi
mov dword [ebp - 0x244], esi
mov edi, esi
mov dword [ebp - 0x2c], edi
jmp 0x1000b677
mov edi, esi
mov dword [ebp - 0x2c], edi
mov ax, word [edi]
mov word [ebp - 0x20], ax
mov word [edi], bx
push ebx
lea eax, [ebp - 0x240]
push eax
push 0x104
push 0x10070f1c
push dword [ebp + 8]
push ebx
call dword [sym.imp.KERNEL32.dll_SearchPathW]
mov ebx, eax
shl ebx, 1
mov dword [ebp - 0x38], ebx
je 0x1000b6f6
cmp ebx, 0x208
jae 0x1000b736
lea eax, [ebp - 0x240]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov dword [ebp - 0x248], eax
cmp eax, 0xffffffff
je 0x1000b72e
test al, 0x10
je 0x1000b72e
and dword [ebp - 0x38], 0
mov ax, word [ebp - 0x20]
mov word [edi], ax
lea eax, [ebp - 0x240]
mov dword [ebp + 8], eax
cmp word [esi], 0
je 0x1000b756
cmp byte [ebp - 0x18], 0
je 0x1000b756
inc esi
inc esi
mov dword [ebp - 0x244], esi
mov edi, esi
mov dword [ebp - 0x2c], edi
mov byte [ebp - 0x30], 1
mov byte [ebp - 0x34], 1
xor ebx, ebx
jmp 0x1000b671
inc ebx
mov dword [ebp - 0x38], ebx
inc ebx
mov dword [ebp - 0x38], ebx
test ebx, ebx
je 0x1000b6f6
cmp ebx, 0x208
jae 0x1000b6f6
mov ax, word [ebp - 0x20]
mov word [edi], ax
lea eax, [ebp - 0x240]
mov dword [ebp + 8], eax
xor ebx, ebx
jmp 0x1000b78d
push dword [ebp - 0x24]
call dword [sym.imp.KERNEL32.dll_LocalFree]
xor eax, eax
jmp 0x1000b87c
push esi
call fcn.1000a6e6
test eax, eax
je 0x1000b75f
push esi
call fcn.1000bdfe
test eax, eax
jne 0x1000b75f
mov eax, dword [ebp + 0xc]
cmp eax, ebx
je 0x1000b786
cmp word [eax], bx
jne 0x1000b804
mov byte [ebp - 0x28], 1
mov dword [ebp + 0xc], esi
cmp byte [ebp - 0x30], 0
jne 0x1000b799
cmp byte [ebp - 0x28], 0
je 0x1000b804
push dword [ebp + 0xc]
call dword [sym.imp.MSVCRT.dll_wcslen]
pop ecx
lea eax, [eax + eax + 6]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov esi, eax
mov dword [ebp - 0x1c], esi
cmp esi, ebx
je 0x1000b837
mov ebx, 0x10070f18
push ebx
push esi
call dword [sym.imp.MSVCRT.dll_wcscpy]
pop ecx
pop ecx
cmp byte [ebp - 0x30], 0
je 0x1000b7d8
mov ax, word [edi]
mov word [ebp - 0x20], ax
and word [edi], 0
push dword [ebp + 0xc]
push esi
mov esi, dword [sym.imp.MSVCRT.dll_wcscat]
call esi
push ebx
push dword [ebp - 0x1c]
call esi
add esp, 0x10
cmp byte [ebp - 0x30], 0
je 0x1000b802
mov ax, word [ebp - 0x20]
mov word [edi], ax
push edi
push dword [ebp - 0x1c]
call esi
pop ecx
pop ecx
xor ebx, ebx
push dword [ebp + 8]
mov esi, dword [sym.imp.SHLWAPI.dll_StrDupW]
call esi
mov ecx, dword [ebp + 0x10]
mov dword [ecx], eax
cmp byte [ebp - 0x30], 0
jne 0x1000b823
cmp byte [ebp - 0x28], 0
mov eax, dword [ebp + 0xc]
je 0x1000b826
mov eax, dword [ebp - 0x1c]
push eax
call esi
mov ecx, dword [ebp + 0x14]
mov dword [ecx], eax
mov dword [ebp - 0x14], 1
jmp 0x1000b859
cmp byte [ebp - 0x30], 0
je 0x1000b841
and byte [ebp - 0x30], 0
cmp byte [ebp - 0x28], 0
je 0x1000b804
and byte [ebp - 0x28], 0
jmp 0x1000b804
or dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x24], ebx
je 0x1000b86b
push dword [ebp - 0x24]
call dword [sym.imp.KERNEL32.dll_LocalFree]
cmp dword [ebp - 0x1c], ebx
je 0x1000b879
push dword [ebp - 0x1c]
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret