Function at 0x62eca0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push esi
push edi
push ebx
sub esp, 0x10
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x104]
mov dword [ebp - 0x10], edx
movzx edx, byte [eax + 0x1a8]
and edx, 0x80
movzx ecx, byte [eax + 0x1a9]
and byte [eax + 0x1ad], 0xfe
and ecx, 1
shr edx, 7
mov edi, dword [eax + 0x4c]
mov ebx, dword [eax + 0x10c]
mov esi, dword [eax + 0x16c]
cmp dword [eax + 0x28], 0xfffffffc
je 0x62ef78
cmp dword [0x80ec60], 0
je 0x62ed89
lea eax, [esi - 1]
cmp eax, 1
ja 0x62ed0d
xor esi, esi
xor ebx, ebx
jmp 0x62ee26
test edx, edx
je 0x62ed81
cmp esi, 0xfffffffa
je 0x62ef3a
test esi, esi
je 0x62eefd
test ecx, ecx
je 0x62ed89
mov dword [ebp - 0x1c], 0
push dword [ebp - 0x14]
call fcn.00692300
push dword [ebp - 0x14]
call fcn.00692470
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x62ed89
push dword [ebp - 0x14]
push ebx
push edi
call fcn.006923a0
mov esi, eax
add esp, 0xc
cmp esi, 0xffffffff
je 0x62eef6
push 0
push dword [ebp - 0x14]
push 2
push 0x74b6a8
call fcn.00692360
add esp, 0x10
mov byte [esi + edi], 0xa
inc esi
mov ebx, 1
jmp 0x62ee26
test esi, esi
je 0x62eefd
push 0
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x168]
test eax, eax
mov edx, eax
jne 0x62eda5
mov edx, 0x20000
cmp ebx, edx
jbe 0x62edad
test esi, esi
jne 0x62edc5
push 0
lea eax, [ebp - 0x18]
push eax
push ebx
push edi
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov edx, eax
mov esi, dword [ebp - 0x18]
jmp 0x62ee1f
xor esi, esi
test eax, eax
mov dword [ebp - 0x1c], esi
jne 0x62edd3
mov eax, 0x20000
mov esi, ebx
mov ebx, eax
push 0
lea edx, [ebp - 0x18]
push edx
push ebx
push edi
push dword [ebp - 0x10]
mov dword [ebp - 0x14], ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov edx, eax
test edx, edx
je 0x62ee1c
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 0x18]
sub esi, eax
add dword [ebp - 0x1c], eax
add edi, eax
mov ecx, dword [ecx + 0x168]
test ecx, ecx
jne 0x62ee0d
mov ecx, 0x20000
cmp esi, ecx
ja 0x62ee13
mov ebx, esi
test esi, esi
je 0x62ee1c
cmp eax, dword [ebp - 0x14]
je 0x62edd7
mov esi, dword [ebp - 0x1c]
xor ebx, ebx
test edx, edx
setne bl
mov edi, dword [ebp + 8]
mov edx, dword [edi + 0x4c]
mov dword [edi + 0x50], edx
mov ecx, dword [edi + 0x17c]
lea eax, [esi + edx]
mov dword [edi + 0x68], eax
mov edi, dword [edi + 0x10c]
add edi, 0xfffffffc
cmp ecx, edi
ja 0x62ee5a
lea eax, [edx + ecx]
lea edx, [edx + ecx + 4]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x64], edx
mov dword [ecx + 0x58], eax
jmp 0x62ee67
mov edx, dword [ebp + 8]
mov dword [edx + 0x64], 0
mov dword [edx + 0x58], eax
mov eax, dword [ebp + 8]
mov dword [eax + 0x118], esi
mov dword [eax + 0xb0], esi
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
cmp edi, 0x3e3
je 0x62ef6b
test ebx, ebx
jne 0x62eec8
mov eax, dword [ebp + 8]
and byte [eax + 0x1ad], 0xfe
mov dword [eax + 0x108], edi
cmp edi, 0x26
je 0x62eedf
cmp edi, 0x6d
jne 0x62eebb
push 0xfffffffffffffff6
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [ebp + 8]
cmp eax, dword [edx + 0x104]
je 0x62eedf
mov eax, 0x27
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
test esi, esi
jne 0x62eeec
mov eax, dword [ebp + 8]
and byte [eax + 0x1ad], 0xfe
cmp dword [eax + 0x124], 0xfffffffc
je 0x62ef54
mov eax, 0x18
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
xor eax, eax
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
xor ebx, ebx
jmp 0x62ee26
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], edx
call fcn.00692590
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x14], eax
cmp dword [0x80ec60], 0
je 0x62ed46
test edx, edx
je 0x62ed46
test ecx, ecx
je 0x62ed46
mov dword [ebp - 0x1c], 1
jmp 0x62ed2d
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
test ecx, ecx
je 0x62ed46
mov dword [ebp - 0x1c], 1
jmp 0x62ed2d
call fcn.0060c3e0
cmp eax, 1
jle 0x62eedf
mov eax, 0x30d
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push 0
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x62ee8a
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], edx
call fcn.0060c3e0
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
cmp eax, 1
jle 0x62ecef
xor esi, esi
mov ebx, 1
jmp 0x62ee26