Function at 0x100088d0
Capabilities:
Check if file exists

Disassembly:
push ebp
lea ebp, [esp - 0x1e4]
sub esp, 0x264
mov eax, dword [0x10274398]
xor eax, ebp
mov dword [ebp + 0x1e0], eax
mov eax, dword [ebp + 0x1f0]
push ebx
mov ebx, dword [ebp + 0x1ec]
push esi
mov dword [ebp - 0x3c], eax
movzx eax, word [ebx]
push edi
push eax
push str.._c:
xor esi, esi
lea eax, [ebp - 0x28]
push 0x104
xor edi, edi
inc esi
push eax
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x34], esi
call fcn.1001d140
add esp, 0x10
push edi
push 0x2000000
push 3
push edi
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateFileW]
mov edi, closesocket
push edi
push ebx
call esi
mov dword [ebp - 0x40], eax
cmp eax, 0xffffffff
jne 0x1000897a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp esi, 2
je 0x1000896d
cmp esi, 3
je 0x1000896d
push esi
push ebx
push str.AIL:QueryCaseSensitiveInfo__s__CreateFile_err_d
push 1
call fcn.101d1209
add esp, 0x10
mov eax, esi
jmp 0x10008b8f
mov eax, dword [ebp - 0x3c]
and dword [eax], 0
xor eax, eax
jmp 0x10008b8f
lea ecx, [ebp - 0x80]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetFileInformationByHandle]
test eax, eax
jne 0x100089a8
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push ebx
mov dword [ebp - 0x2c], eax
push str.AIL:QueryCaseSensitiveInfo__s__GetFileInformationByHandle_err_d
push 1
call fcn.101d1209
add esp, 0x10
jmp 0x10008b83
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x44], eax
xor eax, eax
push eax
push eax
push 3
push eax
push 3
push edi
lea eax, [ebp - 0x28]
push eax
call esi
mov dword [ebp - 0x38], eax
cmp eax, 0xffffffff
jne 0x100089e1
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x28]
push eax
push str.AIL:QueryCaseSensitiveInfo__s__CreateFile_err2_d
jmp 0x10008999
mov edi, 0x410
push edi
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov esi, dword [sym.imp.KERNEL32.dll_HeapAlloc]
jmp 0x10008a4c
push 0
lea eax, [ebp - 0x4c]
push eax
push edi
push dword [ebp - 0x30]
lea eax, [ebp - 0x48]
push 8
push eax
push 0x90068
push dword [ebp - 0x38]
call dword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
jne 0x10008a68
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
call edi
cmp eax, 0x7a
je 0x10008a33
call edi
cmp eax, 0xea
jne 0x10008b35
mov eax, dword [ebp - 0x34]
add eax, eax
mov edi, eax
shl edi, 0xa
add edi, 0x10
push edi
push 0
mov dword [ebp - 0x34], eax
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call esi
mov dword [ebp - 0x30], eax
test eax, eax
jne 0x100089f7
push 0xe
pop eax
push eax
push ebx
mov dword [ebp - 0x2c], eax
push str.AIL:QueryCaseSensitiveInfo__s__HeapAlloc_err_x
jmp 0x10008b58
mov edi, dword [ebp - 0x30]
cmp dword [edi + 8], 0x30
lea esi, [edi + 0xc]
jb 0x10008b26
push 4
push str.FILE
push esi
call fcn.101d2211
add esp, 0xc
test eax, eax
jne 0x10008b26
movzx eax, word [esi + 0x14]
cmp ax, 0x30
jb 0x10008b26
mov edi, dword [edi + 8]
movzx eax, ax
lea ecx, [eax + 4]
cmp edi, ecx
jb 0x10008b26
add eax, esi
jmp 0x10008ac8
mov edx, dword [eax + 4]
test edx, edx
je 0x10008b17
sub edx, esi
lea edx, [edx + eax + 4]
cmp edi, edx
jb 0x10008b17
cmp ecx, 0x10
je 0x10008ad4
add eax, dword [eax + 4]
mov ecx, dword [eax]
cmp ecx, 0xffffffff
jne 0x10008aaf
jmp 0x10008b62
cmp byte [eax + 8], 0
jne 0x10008b08
movzx ecx, word [eax + 0x14]
mov edx, dword [eax + 0x10]
lea esi, [edx + ecx]
cmp esi, dword [eax + 4]
ja 0x10008b08
cmp edx, 0x38
jb 0x10008b08
cmp byte [ecx + eax + 0x28], 1
jne 0x10008b62
mov ecx, dword [ebp - 0x3c]
push 0
push ebx
xor eax, eax
inc eax
push str.AIL:QueryCaseSensitiveInfo__s__CaseSensitiveFolder_err_x
mov dword [ecx], eax
push eax
jmp 0x10008b5a
push 0xd
pop eax
push eax
push ebx
mov dword [ebp - 0x2c], eax
push str.AIL:QueryCaseSensitiveInfo__s__STANDARD_INFORMATION_err_x
jmp 0x10008b58
push 0xd
pop eax
push eax
push ebx
mov dword [ebp - 0x2c], eax
push str.AIL:QueryCaseSensitiveInfo__s__ATTRIBUTE_RECORD_HEADER_err_x
jmp 0x10008b58
push 0xd
pop eax
push eax
push ebx
mov dword [ebp - 0x2c], eax
push str.AIL:QueryCaseSensitiveInfo__s__FILE_RECORD_SEGMENT_HEADER_err_x
jmp 0x10008b58
call edi
mov dword [ebp - 0x2c], eax
call edi
cmp eax, 1
jne 0x10008b4f
and dword [ebp - 0x2c], 0
push 0
push ebx
push str.AIL:QueryCaseSensitiveInfo__s__not_NTFS_err_x
jmp 0x10008b58
push dword [ebp - 0x2c]
push ebx
push str.AIL:QueryCaseSensitiveInfo__s__DeviceIoControl_err_x
push 1
call fcn.101d1209
add esp, 0x10
cmp dword [ebp - 0x30], 0
je 0x10008b7a
push dword [ebp - 0x30]
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
push dword [ebp - 0x38]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp - 0x40]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp + 0x1e0]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.101d14d7
add ebp, 0x1e4
leave
ret