Function at 0x48fac0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x5008
call fcn.004952c0
mov eax, dword [0x4ff5d0]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [0x517324]
cmp byte [eax + 0x32f], 0
push esi
mov esi, dword [ebp + 8]
push edi
je 0x48fc8d
mov eax, dword [eax]
push eax
call fcn.004bba97
mov ecx, dword [0x517324]
mov edx, dword [ecx]
push edx
mov esi, eax
call fcn.004bba97
mov ecx, dword [0x517324]
mov dword [ebp - 0x5008], eax
mov edx, dword [ecx]
push edx
push eax
lea eax, [ebp - 0x5004]
push 1
push eax
call fcn.0049a5ee
add esp, 0x18
cmp eax, dword [ebp - 0x5008]
je 0x48fb44
pop edi
mov eax, 1
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00493f43
mov esp, ebp
pop ebp
ret
push ebx
lea ecx, [ebp - 0x5008]
push ecx
lea edx, [ebp - 0x2804]
push edx
lea eax, [ebp - 0x5004]
push eax
push esi
call fcn.0048d820
mov ecx, dword [0x519e30]
mov dx, word [ebp - 0x2804]
mov word [ecx + 0x1e631], dx
mov eax, dword [0x519e30]
mov ecx, dword [ebp - 0x2802]
mov dword [eax + 0x1e633], ecx
mov eax, dword [0x519e30]
xor ecx, ecx
xor edx, edx
add esp, 0x10
mov dword [ebp - 0x5008], ecx
mov ebx, 6
cmp dx, word [eax + 0x28]
jae 0x48fc0e
lea edx, [ebp - 0x27fe]
jmp 0x48fbb0
mov eax, dword [eax + 0x1e637]
imul ecx, ecx, 0x202
mov si, word [edx]
mov word [ecx + eax], si
mov ecx, dword [ebp - 0x5008]
mov eax, dword [0x519e30]
imul ecx, ecx, 0x202
mov eax, dword [eax + 0x1e637]
lea edi, [eax + ecx + 2]
lea esi, [edx + 2]
mov ecx, 0x80
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0x5008]
mov eax, dword [0x519e30]
inc ecx
mov dword [ebp - 0x5008], ecx
movzx esi, word [eax + 0x28]
add ebx, 0x202
add edx, 0x202
cmp ecx, esi
jb 0x48fbb0
xor ecx, ecx
mov dword [ebp - 0x5008], ecx
movzx edx, word [eax + 0x2a]
movzx esi, word [eax + 0x28]
imul edx, esi
test edx, edx
je 0x48fc61
lea ebx, [ebp + ebx - 0x2804]
lea esp, [esp]
mov eax, dword [eax + 0x1e63b]
mov dx, word [ebx]
mov word [eax + ecx*2], dx
mov ecx, dword [ebp - 0x5008]
mov eax, dword [0x519e30]
inc ecx
mov dword [ebp - 0x5008], ecx
movzx edx, word [eax + 0x2a]
movzx esi, word [eax + 0x28]
imul edx, esi
add ebx, 2
cmp ecx, edx
jb 0x48fc30
pop ebx
movzx edx, word [eax + 0x28]
movzx ecx, word [eax + 0x2a]
movzx eax, word [eax + 0x1e631]
imul ecx, edx
xor edx, edx
cmp eax, ecx
mov ecx, dword [ebp - 4]
setg dl
pop edi
xor ecx, ebp
pop esi
mov eax, edx
call fcn.00493f43
mov esp, ebp
pop ebp
ret
mov eax, dword [0x519e30]
push esi
push 2
add eax, 0x1e631
push 1
push eax
call fcn.0049a5ee
add esp, 0x10
cmp eax, 2
jne 0x48fb2f
mov ecx, dword [0x519e30]
push esi
push 4
add ecx, 0x1e633
push 1
push ecx
call fcn.0049a5ee
add esp, 0x10
cmp eax, 4
jne 0x48fb2f
mov eax, dword [0x519e30]
xor ecx, ecx
xor edx, edx
mov dword [ebp - 0x5008], ecx
cmp dx, word [eax + 0x28]
jae 0x48fd32
jmp 0x48fcf0
imul ecx, ecx, 0x202
add ecx, dword [eax + 0x1e637]
push esi
push 0x202
push 1
push ecx
call fcn.0049a5ee
add esp, 0x10
cmp eax, 0x202
jne 0x48fb2f
mov ecx, dword [ebp - 0x5008]
mov eax, dword [0x519e30]
inc ecx
mov dword [ebp - 0x5008], ecx
movzx edx, word [eax + 0x28]
cmp ecx, edx
jb 0x48fcf0
xor ecx, ecx
mov dword [ebp - 0x5008], ecx
movzx edx, word [eax + 0x2a]
movzx edi, word [eax + 0x28]
imul edx, edi
test edx, edx
je 0x48fc62
lea ecx, [ecx]
mov eax, dword [eax + 0x1e63b]
push esi
push 2
lea ecx, [eax + ecx*2]
push 1
push ecx
call fcn.0049a5ee
add esp, 0x10
cmp eax, 2
jne 0x48fb2f
mov ecx, dword [ebp - 0x5008]
mov eax, dword [0x519e30]
inc ecx
mov dword [ebp - 0x5008], ecx
movzx edx, word [eax + 0x2a]
movzx edi, word [eax + 0x28]
imul edx, edi
cmp ecx, edx
jb 0x48fd50
jmp 0x48fc62