Function at 0x489710
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1008
call fcn.006a8560
mov eax, dword [0x7cdffc]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x1004]
push esi
push edi
push 0x1000
push 0
push eax
mov edi, edx
mov dword [ebp - 0x1008], 0xffffffff
mov esi, ecx
call fcn.006e6ec0
push 0
push 0
push esi
call fcn.006eed41
push esi
push 1
lea eax, [ebp - 0x1004]
push 0x800
push eax
call fcn.006ef511
movzx ecx, byte [ebp - 0x905]
add esp, 0x28
movzx eax, byte [ebp - 0x904]
shl cx, 8
or cx, ax
movzx ecx, cx
lea eax, [ecx - 0x808]
movzx eax, ax
test ax, ax
je 0x489a39
add eax, 0xfffff700
movzx eax, ax
test ax, ax
je 0x489a39
add eax, 0xfffffd00
movzx eax, ax
test ax, ax
je 0x489a39
mov edx, 0x100
cmp ax, dx
je 0x489a39
lea eax, [ebp - 0x884]
mov eax, dword [eax]
lea edx, [ebp - 0x1008]
cmp eax, dword [edx]
jne 0x4899e4
lea eax, [ebp - 0x880]
mov eax, dword [eax]
cmp eax, dword [edx]
jne 0x4899e4
mov eax, 0x1908
cmp cx, ax
jbe 0x489819
mov eax, 0x2108
cmp cx, ax
je 0x48980d
mov eax, 0x2308
cmp cx, ax
jne 0x48983b
mov edx, 0x2492308
mov esi, 0x22070179
jmp 0x489864
je 0x48985a
mov eax, 0x1500
cmp cx, ax
jne 0x489831
mov edx, 0x2490809
mov esi, 0x5090179
jmp 0x489864
mov eax, 0x1708
cmp cx, ax
je 0x48985a
mov dword [edi], 0
xor eax, eax
pop edi
pop esi
mov dword [ebx], 0
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.006a7b19
mov esp, ebp
pop ebp
ret
mov esi, 0x21050179
mov edx, 0x2491006
movzx ecx, byte [ebp - 0x8f0]
movzx eax, byte [ebp - 0x8ef]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x8ee]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x8ed]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x935]
xor ecx, edx
movzx edx, byte [ebp - 0x934]
mov dword [edi], ecx
movzx ecx, byte [ebp - 0x8ec]
shl edx, 8
or edx, eax
shl ecx, 8
movzx eax, byte [ebp - 0x936]
shl edx, 8
or edx, eax
movzx eax, byte [ebp - 0x937]
shl edx, 8
or edx, eax
movzx eax, byte [ebp - 0x8eb]
or ecx, eax
movzx eax, byte [ebp - 0x8ea]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x8e9]
shl ecx, 8
or ecx, eax
xor edx, ecx
xor edx, esi
mov dword [ebx], edx
mov edx, dword [edi]
mov ecx, edx
movzx eax, byte [edi + 1]
shl ecx, 8
or ecx, eax
shr edx, 0x18
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
shl ecx, 8
or ecx, edx
mov dword [edi], ecx
mov edx, dword [ebx]
mov ecx, edx
movzx eax, byte [ebx + 1]
shl ecx, 8
or ecx, eax
shr edx, 0x18
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
shl ecx, 8
or ecx, edx
mov edx, ebx
mov dword [ebx], ecx
mov ecx, edi
call fcn.00488e20
mov edx, dword [edi]
mov ecx, edx
movzx eax, byte [edi + 1]
shl ecx, 8
or ecx, eax
shr edx, 0x18
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
shl ecx, 8
or ecx, edx
mov dword [edi], ecx
mov edx, dword [ebx]
movzx eax, byte [ebx + 1]
shl edx, 8
or edx, eax
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
movzx eax, byte [ebx + 3]
movzx ecx, byte [ebp - 0x928]
shl ecx, 8
shl edx, 8
or edx, eax
movzx eax, byte [ebp - 0x927]
or ecx, eax
movzx eax, byte [ebp - 0x926]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x925]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x923]
xor edx, ecx
movzx ecx, byte [ebp - 0x924]
shl ecx, 8
or ecx, eax
mov dword [ebx], edx
movzx eax, byte [ebp - 0x922]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x921]
shl ecx, 8
or ecx, eax
xor dword [edi], ecx
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.006a7b19
mov esp, ebp
pop ebp
ret
movzx ecx, byte [ebp - 0x925]
movzx eax, byte [ebp - 0x926]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x927]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x928]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x922]
mov dword [edi], ecx
movzx ecx, byte [ebp - 0x921]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x923]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x924]
jmp 0x489a8c
movzx ecx, byte [ebp - 0x924]
movzx eax, byte [ebp - 0x923]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x922]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x921]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x927]
mov dword [edi], ecx
movzx ecx, byte [ebp - 0x928]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x926]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp - 0x925]
shl ecx, 8
or ecx, eax
mov dword [ebx], ecx
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.006a7b19
mov esp, ebp
pop ebp
ret