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

Disassembly:
push 0x3d8
mov eax, 0x4ac7d2
call fcn.00483079
mov dword [ebp - 0x3e0], ecx
mov eax, dword [ebp + 8]
xor edi, edi
mov dword [ebp - 0x3d4], eax
xor esi, esi
call fcn.004383f6
push eax
lea ecx, [ebp - 0x94]
call fcn.004355b8
and dword [ebp - 4], esi
call fcn.00438402
mov ebx, eax
mov ecx, eax
call fcn.00435e57
lea ecx, [ebp - 0x94]
test al, al
je 0x4371da
push dword [ebp - 0x3d4]
call fcn.004358c4
push esi
push 0x80
push 3
push esi
push 1
push SysReAllocString
lea ecx, [ebp - 0x94]
call fcn.00435c9d
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
or ebx, 0xffffffff
mov dword [ebp - 0x3d0], eax
cmp eax, ebx
jne 0x437181
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], ebx
call fcn.004356df
jmp 0x437365
push 0
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov esi, eax
test esi, esi
je 0x43716e
and dword [ebp - 0x3d8], 0
push esi
call fcn.00482d77
pop ecx
push 0
mov edi, eax
lea eax, [ebp - 0x3d8]
push eax
push esi
push edi
push dword [ebp - 0x3d0]
call dword [sym.imp.KERNEL32.dll_ReadFile]
push dword [ebp - 0x3d0]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x3d8], esi
je 0x437353
push edi
call fcn.00482b65
pop ecx
xor edi, edi
jmp 0x43716e
push ebx
call fcn.004358a7
call fcn.00438740
test al, al
je 0x4371f8
call fcn.00438408
mov ebx, eax
mov dword [ebp - 0x3d0], ebx
jmp 0x437261
call fcn.0043840e
push eax
lea ecx, [ebp - 0x19c]
call fcn.004355b8
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 1
call fcn.00435c9d
push eax
call fcn.00469cc0
pop ecx
push eax
lea ecx, [ebp - 0x94]
mov dword [ebp - 0x3d8], eax
call fcn.00435c9d
push eax
call fcn.0045395d
mov ebx, eax
mov eax, dword [ebp - 0x3d8]
mov dword [ebp - 0x3d0], ebx
pop ecx
pop ecx
test eax, eax
je 0x437252
push eax
call fcn.00482b65
pop ecx
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 0
call fcn.004356df
test ebx, ebx
jne 0x43726d
or ebx, 0xffffffff
jmp 0x43716e
and dword [ebp - 0x3dc], 0
lea ecx, [ebp - 0x118]
or ebx, 0xffffffff
push ebx
push dword [ebp - 0x3d4]
call fcn.004355dd
push 0x4b3990
push 0x4cab28
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 2
call fcn.00436024
lea eax, [ebp - 0x3cc]
push eax
lea eax, [ebp - 0x3dc]
push eax
push 1
lea ecx, [ebp - 0x118]
call fcn.00435c9d
push eax
push dword [ebp - 0x3d0]
call fcn.00453334
add esp, 0x14
test eax, eax
je 0x4372e0
lea ecx, [ebp - 0x118]
call fcn.004356df
jmp 0x43716e
mov esi, dword [ebp - 0x1a0]
test esi, esi
je 0x4372d0
push esi
call fcn.00482d77
push esi
mov edi, eax
push edi
push dword [ebp - 0x3dc]
push dword [ebp - 0x3d0]
call fcn.00453d97
add esp, 0x14
test eax, eax
je 0x437333
cmp eax, 0x600
je 0x437333
push edi
call fcn.00482b65
pop ecx
xor edi, edi
call fcn.00438740
test al, al
jne 0x4372d0
push dword [ebp - 0x3d0]
call fcn.00453113
pop ecx
jmp 0x4372d0
call fcn.00438740
test al, al
jne 0x437348
push dword [ebp - 0x3d0]
call fcn.00453113
pop ecx
lea ecx, [ebp - 0x118]
call fcn.004356df
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], ebx
call fcn.004356df
test edi, edi
jne 0x4373db
push 0
push 0x80
push 3
push 0
push 1
push SysReAllocString
push dword [ebp - 0x3d4]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x3d4], eax
cmp eax, ebx
je 0x4373db
xor ebx, ebx
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov esi, eax
test esi, esi
je 0x4373db
push esi
mov dword [ebp - 0x3d0], ebx
call fcn.00482d77
pop ecx
push ebx
mov ebx, dword [ebp - 0x3d4]
mov edi, eax
lea eax, [ebp - 0x3d0]
push eax
push esi
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x3d0], esi
je 0x4373db
push edi
call fcn.00482b65
pop ecx
xor edi, edi
lea eax, [ebp - 0x3e4]
push eax
push 0
push esi
push edi
call dword [sym.imp.GDI32.dll_AddFontMemResourceEx]
mov ecx, dword [ebp - 0x3e0]
push eax
add ecx, 0x378
call fcn.00435903
call fcn.00483034
ret 4