Function at 0x1003eaec
Capabilities:
Check if file exists
Get file size
Read file on windows

Disassembly:
push 0x94
mov eax, 0x1017cb9b
call fcn.10077149
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x9c], eax
and dword [ebp - 4], 0
call fcn.1003dab9
test al, al
je 0x1003eb21
push ebx
pop ebx
pop ebp
push ebx
pop esi
push ebp
push esi
pop esi
push ecx
push ebp
push ebp
push esi
push ebp
push ebx
pop ecx
push esp
call fcn.1003db43
test al, al
je 0x1003eb41
pop ebx
push esp
pop esp
pop esi
push ebx
pop ecx
push edx
pop edi
pop esi
push ebx
pop eax
push eax
pop ecx
pop ebp
pop ebp
push ebx
pop ebp
push edi
pop ebx
push ebp
push edx
push edi
push edx
and dword [ebp - 0x18], 0
lea ecx, [ebp - 0x28]
xor eax, eax
mov dword [ebp - 0x14], 7
push eax
push 0x101d7658
mov word [ebp - 0x28], ax
call fcn.10020030
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 1
call fcn.1004ed69
and dword [ebp - 0x98], 0
call fcn.1003d891
test al, al
je 0x1003eb91
pop ecx
pop ebx
push ebx
push eax
push edi
pop edi
push edx
pop esp
push ebx
pop edi
pop esp
pop edi
pop esi
pop ecx
pop ebp
pop ebx
pop edx
push ecx
call fcn.1003d9a5
test al, al
je 0x1003ebaa
pop eax
pop ebp
pop edx
push eax
pop esp
push ebp
push edx
push ebp
push edx
push edi
push ebp
push ecx
pop esi
push ebp
pop edi
pop eax
call fcn.1003d59a
test al, al
je 0x1003ebd0
push ecx
pop esi
pop ebx
push esp
pop eax
pop ecx
push edx
push ebp
pop ebx
pop esp
push esi
pop edx
pop eax
push esi
push esi
pop eax
pop eax
pop ebp
pop edi
push edi
pop esp
pop edx
pop esp
push ebp
push edx
push ebp
push edi
push edi
pop ebx
cmp dword [ebp + 0x1c], 8
lea eax, [ebp + 8]
cmovae eax, dword [ebp + 8]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1003ed30
cmp dword [ebp + 0x1c], 8
lea eax, [ebp + 8]
push 0
cmovae eax, dword [ebp + 8]
push 0x80
push 4
push 0
push 1
push 0x80000000
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ebx, eax
mov dword [ebp - 0x98], ebx
cmp ebx, 0xffffffff
je 0x1003ecb5
call fcn.1003da2f
test al, al
je 0x1003ec3d
pop esp
pop edi
pop esp
pop esp
push eax
push edi
push edx
push esp
push edx
pop esp
push esi
pop esi
pop edi
pop esp
pop esp
push esi
push edx
pop esp
pop edx
pop ecx
pop esp
push 0
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov esi, dword [ebp - 0x9c]
push eax
mov dword [esi], eax
call fcn.10031bf4
mov ebx, eax
pop ecx
test ebx, ebx
jne 0x1003ecb9
call fcn.1003d891
test al, al
je 0x1003ec76
pop ecx
pop ebx
push ebx
push eax
push edi
pop edi
push edx
pop esp
push ebx
pop edi
pop esp
pop edi
pop esi
pop ecx
pop ebp
pop ebx
pop edx
push ecx
call fcn.1003d9a5
test al, al
je 0x1003ec8f
pop eax
pop ebp
pop edx
push eax
pop esp
push ebp
push edx
push ebp
push edx
push edi
push ebp
push ecx
pop esi
push ebp
pop edi
pop eax
call fcn.1003d59a
test al, al
je 0x1003ecb5
push ecx
pop esi
pop ebx
push esp
pop eax
pop ecx
push edx
push ebp
pop ebx
pop esp
push esi
pop edx
pop eax
push esi
push esi
pop eax
pop eax
pop ebp
pop edi
push edi
pop esp
pop edx
pop esp
push ebp
push edx
push ebp
push edi
push edi
pop ebx
xor ebx, ebx
jmp 0x1003ed36
push dword [esi]
push 0
push ebx
call fcn.10054b20
add esp, 0xc
call fcn.1003da2f
test al, al
je 0x1003ecea
pop esp
pop edi
pop esp
pop esp
push eax
push edi
push edx
push esp
push edx
pop esp
push esi
pop esi
pop edi
pop esp
pop esp
push esi
push edx
pop esp
pop edx
pop ecx
pop esp
mov esi, dword [ebp - 0x9c]
push 0
lea eax, [ebp - 0xa0]
push eax
push dword [esi]
push ebx
push dword [ebp - 0x98]
call dword [sym.imp.KERNEL32.dll_ReadFile]
call fcn.1003d9ea
test al, al
je 0x1003ed22
pop eax
push eax
push edi
push esi
push eax
pop esp
push ecx
push edx
pop esi
pop ecx
pop esp
pop edx
pop ecx
push ebp
push edx
push esi
pop edi
pop ebp
pop edi
pop eax
pop eax
push edi
pop esi
push dword [ebp - 0x98]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1003ed36
mov ebx, dword [ebp - 0x98]
push 0
push 1
lea ecx, [ebp - 0x28]
call fcn.1001ff70
push 0
push 1
lea ecx, [ebp + 8]
call fcn.1001ff70
mov eax, ebx
call fcn.10077104
ret