Function at 0x44bb80
Capabilities:
Read file on windows

Disassembly:
push ebp
mov eax, 0x102c
push edi
push esi
push ebx
call fcn.0049d320
sub esp, eax
mov ebx, dword [esp + 0x1040]
mov eax, dword [ebx + 8]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__filelengthi64]
mov ecx, 0x1000
cmp ecx, eax
mov ecx, 0
sbb ecx, edx
jge 0x44bc68
mov esi, 0x1000
xor edi, edi
sub eax, esi
mov dword [esp + 0xc], 0
sbb edx, edi
mov dword [esp + 0x10], eax
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, dword [ebx + 8]
mov dword [esp + 0x14], edx
mov dword [esp], eax
call sub.msvcrt.dll__lseeki64
xor eax, dword [esp + 0x10]
xor edx, dword [esp + 0x14]
or edx, eax
je 0x44bc90
mov ebx, dword [0x677e60]
test ebx, ebx
jne 0x44bc78
mov dword [esp], 0x40000
call sub.msvcrt.dll_malloc
mov ebx, eax
test eax, eax
je 0x44be0b
mov dword [esp], 0x40000
call sub.msvcrt.dll_malloc
mov esi, eax
test eax, eax
je 0x44be0b
mov dword [esp + 4], str.ERROR:_file_seek_operation_failed
mov dword [esp], ebx
call fcn.004bf1f0
mov dword [esp + 4], esi
mov dword [esp], ebx
call fcn.0042e7f0
mov dword [esp + 4], esi
mov dword [esp], 0x5a6d2c
call fcn.004bf160
mov dword [esp], 2
call sub.msvcrt.dll_exit
lea esi, [esi]
nop
mov esi, eax
mov edi, edx
jmp 0x44bbbe
mov dword [esp + 4], 1
mov dword [esp], 0x677e20
call dword [sym.imp.msvcrt.dll_longjmp]
lea esi, [esi]
lea ebp, [esp + 0x20]
mov dword [esp + 8], esi
mov dword [esp + 4], ebp
mov eax, dword [ebx + 8]
mov dword [esp + 0x1c], esi
mov dword [esp], eax
call sub.msvcrt.dll__read
test eax, eax
js 0x44bd80
mov ebx, eax
xor eax, esi
sar ebx, 0x1f
mov edx, ebx
xor edx, edi
or edx, eax
je 0x44bd38
mov edx, dword [0x677e60]
test edx, edx
jne 0x44bc78
mov dword [esp], 0x40000
call sub.msvcrt.dll_malloc
mov ebp, eax
test eax, eax
je 0x44be0b
mov dword [esp], 0x40000
call sub.msvcrt.dll_malloc
mov ebx, eax
test eax, eax
je 0x44be0b
mov dword [esp + 8], esi
mov dword [esp + 4], str.ERROR:_cant_read__lu_bytes
mov dword [esp], ebp
call fcn.004bf1f0
mov dword [esp + 4], ebx
mov dword [esp], ebp
call fcn.0042e7f0
mov dword [esp + 4], ebx
mov dword [esp], 0x5a6d2c
call fcn.004bf160
mov dword [esp], 2
call sub.msvcrt.dll_exit
lea esi, [esi]
mov eax, dword [esp + 0x1c]
lea eax, [ebp + eax - 4]
cmp dword [eax], 0x1437241
je 0x44bd67
cmp eax, ebp
ja 0x44bd5c
jmp 0x44bdd0
cmp eax, ebp
je 0x44bdd0
sub eax, 1
cmp dword [eax], 0x1437241
jne 0x44bd58
sub eax, ebp
cdq
add eax, dword [esp + 0x10]
adc edx, dword [esp + 0x14]
add esp, 0x102c
pop ebx
pop esi
pop edi
pop ebp
ret
mov ecx, dword [0x677e60]
test ecx, ecx
jne 0x44bc78
mov dword [esp], 0x40000
call sub.msvcrt.dll_malloc
mov esi, eax
test eax, eax
je 0x44be0b
mov dword [esp], 0x40000
call sub.msvcrt.dll_malloc
mov ebx, eax
test eax, eax
je 0x44be0b
mov dword [esp + 4], str.ERROR:_file_read_operation_failed
mov dword [esp], esi
call fcn.004bf1f0
mov dword [esp + 4], ebx
mov dword [esp], esi
jmp 0x44bd13
mov eax, dword [0x677e60]
test eax, eax
jne 0x44bc78
mov dword [esp], 0x40000
call sub.msvcrt.dll_malloc
mov esi, eax
test eax, eax
je 0x44be0b
mov dword [esp], 0x40000
call sub.msvcrt.dll_malloc
mov ebx, eax
test eax, eax
je 0x44be0b
mov dword [esp + 4], str.ERROR:_this_is_not_FreeArc_archive_or_this_archive_is_corrupt
jmp 0x44bdba
cmp dword [0x677e60], 0
jne 0x44bc78
mov eax, 0x40000
call fcn.0044b100
mov esi, eax
mov eax, 0x40000
call fcn.0044b100
mov dword [esp + 8], 0x40000
mov dword [esp + 4], str.ERROR:_cant_alloc__lu_memory_bytes
mov ebx, eax
mov dword [esp], esi
call fcn.004bf1f0
jmp 0x44bdc2