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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x38
cmp dword [ebp + 8], 0
push ebx
push esi
mov esi, ecx
push edi
mov dword [ebp - 4], esi
mov edi, 0x1004407c
jne 0x1011226c
push 0x10044b68
mov edx, 0x36f
mov ecx, edi
call fcn.100e970f
cmp dword [ebp + 0xc], 0
jne 0x10112283
push 0x10044b80
mov edx, 0x370
mov ecx, edi
call fcn.100e970f
cmp dword [ebp + 0x10], 0
jne 0x1011229a
push 0x10044b9c
mov edx, 0x371
mov ecx, edi
call fcn.100e970f
mov edx, dword [ebp + 0xc]
lea ecx, [ebp - 0x28]
xor ebx, ebx
push 0x10044bac
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x30], ebx
call fcn.100a9500
mov edi, eax
mov dword [ebp - 8], edi
test edi, edi
jns 0x101122ef
push 0x10044bd0
xor ebx, ebx
inc ebx
push ebx
push edi
push 0x4000000
call fcn.100ab973
add esp, 0x10
jmp 0x101125cf
mov eax, ebx
lea ecx, [esi + 0x28]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x38], ecx
push dword [ebp + 0x18]
push ecx
push ebx
push dword [eax*4 + 0x101dbad0]
mov ecx, esi
push dword [ebp - 0x28]
call fcn.10111ea6
mov edi, eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 8], edi
test edi, edi
js 0x101125b1
mov ecx, dword [ebp - 0x38]
inc eax
add ecx, 0x10
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x38], ecx
cmp eax, 7
jb 0x101122fa
xor ebx, ebx
inc ebx
cmp byte [esi + 0xc4], 0
je 0x10112459
mov edx, dword [ebp + 8]
lea ecx, [ebp - 0xc]
push 0x10044c1c
call fcn.100a9500
mov edi, eax
mov dword [ebp - 8], edi
test edi, edi
jns 0x10112365
push 0x10044c44
jmp 0x101122d8
mov edx, dword [ebp - 0xc]
lea ecx, [ebp - 0x2c]
push 0x10044c78
call fcn.100a9500
mov edi, eax
mov dword [ebp - 8], edi
test edi, edi
jns 0x10112388
push 0x10044c80
jmp 0x101122d8
push dword [ebp - 0x2c]
call dword [sym.imp.api_ms_win_core_file_l1_1_0.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x101123c7
test al, 0x10
jne 0x101123c7
push dword [ebp + 0x18]
lea eax, [esi + 0xb8]
mov ecx, esi
push eax
push ebx
push 0x10044c78
push dword [ebp - 0xc]
call fcn.10111ea6
mov edi, eax
mov dword [ebp - 8], edi
test edi, edi
jns 0x101123c7
push 0x10044cb8
jmp 0x101122db
mov eax, dword [ebp - 4]
xor esi, esi
cmp dword [eax + 0xbc], esi
jne 0x1011245e
mov edx, dword [ebp + 8]
lea ecx, [ebp - 0x10]
push 0x10044cdc
call fcn.100a9500
mov edi, eax
mov dword [ebp - 8], edi
test edi, edi
jns 0x101123fb
push 0x10044ce8
jmp 0x101122db
mov edx, dword [ebp - 0x10]
lea ecx, [ebp - 0x30]
push 0x10044c78
call fcn.100a9500
mov edi, eax
mov dword [ebp - 8], edi
test edi, edi
jns 0x1011241e
push 0x10044d20
jmp 0x101122db
push dword [ebp - 0x30]
call dword [sym.imp.api_ms_win_core_file_l1_1_0.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1011245b
test al, 0x10
jne 0x1011245b
mov ecx, dword [ebp - 4]
push dword [ebp + 0x18]
lea eax, [ecx + 0xb8]
push eax
push ebx
push 0x10044c78
push dword [ebp - 0x10]
call fcn.10111ea6
mov edi, eax
mov dword [ebp - 8], edi
test edi, edi
jns 0x1011245b
jmp 0x101123bd
xor esi, esi
mov eax, dword [ebp - 4]
cmp byte [eax + 0xa4], 0
je 0x101124ba
mov ecx, dword [ebp - 4]
lea eax, [ebp - 0x20]
push eax
push dword [ebp + 0xc]
call fcn.101116ba
mov edi, eax
mov dword [ebp - 8], edi
test edi, edi
jns 0x10112489
push 0x10044d5c
jmp 0x101122db
mov ecx, dword [ebp - 4]
push dword [ebp + 0x18]
lea eax, [ecx + 0x98]
push eax
push esi
push 0x10044d94
push dword [ebp - 0x20]
call fcn.10111ea6
mov edi, eax
mov dword [ebp - 8], edi
test edi, edi
jns 0x101124b7
push 0x10044dac
jmp 0x101122db
mov eax, dword [ebp - 4]
cmp byte [eax + 0xb4], 0
je 0x10112528
lea eax, [ebp - 0x24]
push eax
push dword [ebp + 0xc]
call fcn.10111bbb
mov edi, eax
mov dword [ebp - 8], edi
test edi, edi
jns 0x101124e2
push 0x10044dd8
jmp 0x101122db
mov ecx, dword [ebp - 4]
push dword [ebp + 0x18]
lea eax, [ecx + 0xa8]
push eax
push esi
push 0x10044dfc
push dword [ebp - 0x24]
call fcn.10111ea6
mov edi, eax
mov dword [ebp - 8], edi
cmp edi, 0x80070003
jne 0x1011251a
mov ecx, dword [ebp - 4]
xor eax, eax
mov edi, eax
mov dword [ebp - 8], eax
mov byte [ecx + 0xb4], al
test edi, edi
jns 0x10112528
push 0x10044e14
jmp 0x101122db
mov esi, dword [ebp - 4]
cmp byte [esi + 0x74], 0
je 0x101125cf
mov ecx, dword [0x101dc9c4]
mov dword [ebp - 0x34], ecx
push ecx
mov eax, dword [ecx]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x101e07c0]
call esi
push 0x48
call fcn.100b84d0
pop ecx
push 0x48
mov edi, eax
xor esi, esi
push esi
push edi
mov dword [ebp - 0x14], edi
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov eax, dword [ebp - 0x34]
add esp, 0xc
mov ecx, dword [ebp - 4]
mov dword [edi], 0x48
push dword [ebp + 0x14]
push eax
push dword [ebp + 0xc]
push dword [ebp + 8]
push edi
call fcn.10112713
mov edi, eax
mov dword [ebp - 8], edi
test edi, edi
jns 0x101125a4
push 0x10044e34
push ebx
push edi
push 0x4000000
call fcn.100ab973
add esp, 0x10
jmp 0x101125d1
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], esi
mov dword [ecx], eax
jmp 0x101125d1
push dword [eax*4 + 0x101dbad0]
xor ebx, ebx
push 0x10044bfc
inc ebx
push ebx
push edi
push 0x4000000
call fcn.100ab973
add esp, 0x14
xor esi, esi
test edi, edi
jns 0x10112664
mov edi, dword [ebp - 4]
add edi, 0x28
push edi
call fcn.100b3c0c
test eax, eax
jns 0x10112603
push dword [esi + 0x101dbad0]
push 0x100442e0
push ebx
push eax
push 0x4000000
call fcn.100ab973
add esp, 0x14
mov eax, dword [ebp - 0x1c]
add edi, 0x10
add eax, 4
mov dword [ebp - 0x1c], eax
mov esi, eax
cmp eax, 0x1c
jb 0x101125df
mov esi, dword [ebp - 4]
lea eax, [esi + 0x98]
push eax
call fcn.100b3c0c
mov edi, dword [ebp - 8]
test eax, eax
jns 0x10112640
push 0x1004430c
push ebx
push eax
push 0x4000000
call fcn.100ab973
add esp, 0x10
lea eax, [esi + 0xa8]
push eax
call fcn.100b3c0c
test eax, eax
jns 0x10112664
push 0x10044e68
push ebx
push eax
push 0x4000000
call fcn.100ab973
add esp, 0x10
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x10112675
add eax, 0xfffffffc
push eax
call fcn.100b84f9
pop ecx
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x10112686
add eax, 0xfffffffc
push eax
call fcn.100b84f9
pop ecx
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x10112697
add eax, 0xfffffffc
push eax
call fcn.100b84f9
pop ecx
mov eax, dword [ebp - 0xc]
test eax, eax
je 0x101126a8
add eax, 0xfffffffc
push eax
call fcn.100b84f9
pop ecx
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x101126b9
add eax, 0xfffffffc
push eax
call fcn.100b84f9
pop ecx
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x101126ca
add eax, 0xfffffffc
push eax
call fcn.100b84f9
pop ecx
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x101126db
add eax, 0xfffffffc
push eax
call fcn.100b84f9
pop ecx
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x101126f3
push ecx
push ebx
call fcn.10112d4c
push 0x48
push ebx
call fcn.100b8c29
pop ecx
pop ecx
mov ecx, dword [ebp - 0x34]
test ecx, ecx
je 0x1011270a
mov eax, dword [ecx]
push ecx
mov esi, dword [eax + 8]
mov ecx, esi
call dword [0x101e07c0]
call esi
mov eax, edi
pop edi
pop esi
pop ebx
leave
ret 0x14