Function at 0x13166a40
Capabilities:
Get file size
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5b4
mov eax, dword [0x131e90f0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x104
lea eax, [ebp - 0x238]
push 0
push eax
call fcn.1319ba80
add esp, 0xc
lea eax, [ebp - 0x238]
push eax
push 0
push 0
push 0x1a
push 0
call dword [0x13c27e9c]
push dword [0x13c27da0]
lea eax, [ebp - 0x238]
push eax
call dword [0x13c27e30]
push 0x104
lea eax, [ebp - 0x340]
push 0
push eax
call fcn.1319ba80
add esp, 0xc
lea eax, [ebp - 0x238]
push eax
lea eax, [ebp - 0x340]
push eax
call dword [0x13c27f3c]
push dword [0x13c27df0]
lea eax, [ebp - 0x340]
push eax
call dword [0x13c27e30]
push 0
push 0x80
push 3
push 0
push 3
push 1
lea eax, [ebp - 0x340]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov ebx, eax
cmp ebx, 0xffffffff
je 0x13166d17
push 0
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov esi, eax
lea ecx, [esi + 1]
push ecx
call dword [0x13c27ecc]
add esp, 4
mov edi, eax
lea eax, [ebp - 0x558]
push 0
push eax
push esi
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
push dword [0x13c27d9c]
mov byte [edi + esi], 0
push edi
call dword [0x13c27e20]
test eax, eax
je 0x13166d06
push dword [0x13c27dc8]
mov al, byte [eax + 0xb]
push edi
mov byte [ebp - 0x551], al
call dword [0x13c27e20]
mov esi, eax
test esi, esi
je 0x13166d06
push 0x131dc04c
push esi
call dword [0x13c27e20]
test eax, eax
je 0x13166d06
push 0x104
mov byte [eax], 0
add esi, 5
lea eax, [ebp - 0x448]
push 0
push eax
call fcn.1319ba80
add esp, 0xc
cmp byte [ebp - 0x551], 0x31
jne 0x13166baa
lea eax, [ebp - 0x238]
push eax
lea eax, [ebp - 0x448]
push eax
call dword [0x13c27f3c]
push esi
lea eax, [ebp - 0x448]
push eax
call dword [0x13c27e30]
lea ecx, [ebp - 0x28]
call fcn.13166930
lea eax, [ebp - 0x238]
push eax
lea eax, [ebp - 0x550]
push eax
call dword [0x13c27f3c]
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x550]
push eax
call dword [0x13c27e30]
lea edx, [ebp - 0x550]
lea ecx, [ebp - 0x448]
call fcn.13165fd0
push 0x104
lea eax, [ebp - 0x130]
push 0
push eax
call fcn.1319ba80
add esp, 0xc
lea eax, [ebp - 0x130]
push dword [0x13c27d94]
push eax
call dword [0x13c27f3c]
push dword [0x13c27e04]
lea eax, [ebp - 0x130]
push eax
call dword [0x13c27e30]
push dword [0x13c27df8]
lea eax, [ebp - 0x130]
push eax
call dword [0x13c27e30]
push 0x131dc048
lea eax, [ebp - 0x130]
push eax
call dword [0x13c27e30]
lea eax, [ebp - 0x550]
push eax
lea eax, [ebp - 0x130]
push eax
call dword [0x13c27e30]
push 0x131dc048
lea eax, [ebp - 0x130]
push eax
call dword [0x13c27e30]
lea eax, [ebp - 0x5b0]
mov dword [ebp - 0x59c], 0
push eax
lea eax, [ebp - 0x5a0]
mov dword [ebp - 0x5a0], 0x44
push eax
push 0
push 0
push 0
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x598], 0x13c280e8
push 0
push 0
lea eax, [ebp - 0x130]
movlpd qword [ebp - 0x594], xmm0
push eax
push 0
movlpd qword [ebp - 0x58c], xmm0
movlpd qword [ebp - 0x584], xmm0
movlpd qword [ebp - 0x57c], xmm0
movlpd qword [ebp - 0x574], xmm0
movlpd qword [ebp - 0x56c], xmm0
movlpd qword [ebp - 0x564], xmm0
movups xmmword [ebp - 0x5b0], xmm0
call dword [0x13c27e54]
push ebx
call dword [0x13c27e84]
push edi
call dword [0x13c27e18]
add esp, 4
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.13198da3
mov esp, ebp
pop ebp
ret