Function at 0x44a7e0
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x2c
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], ebp
mov edi, dword [esp + 0x38]
mov ebp, dword [esp + 0x3c]
mov dword [esp + 8], edi
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 8]
mov dword [esp], eax
call sub.msvcrt.dll__read
test eax, eax
jns 0x44aa06
cmp dword [0x7184d0], 0
je 0x44a83b
mov dword [esp + 4], 1
mov dword [esp], 0x7184f0
call sub.msvcrt.dll_longjmp
mov dword [esp], 0x40000
call sub.msvcrt.dll_malloc
test eax, eax
jne 0x44a8e0
cmp dword [0x7184d0], 0
je 0x44a86c
mov dword [esp + 4], 1
mov dword [esp], 0x7184f0
call sub.msvcrt.dll_longjmp
mov dword [esp], 0x40000
call fcn.004019f2
mov ebx, eax
mov dword [esp], 0x40000
call fcn.004019f2
mov esi, eax
mov dword [esp + 8], 0x40000
mov dword [esp + 4], 0x44e828
mov dword [esp], ebx
call sub.msvcrt.dll_sprintf
mov dword [esp + 4], esi
mov dword [esp], ebx
call fcn.0040ee32
mov dword [esp + 0xc], 0x10
mov dword [esp + 8], str.Error_encountered
mov dword [esp + 4], esi
mov dword [esp], 0xf251400
pop es
push cs
adc dword [esi], eax
adc byte [edi], ah
or al, 0xb
pop ss
add eax, 0x28060903
sbb dword [ecx], eax
sbb ah, byte [ecx]
or eax, 0x2c15132b
and ah, byte [ebx]
and al, 0x2d
das
push ss
sbb al, 0x1d
and esp, dword [ebp + 0x1d1c162f]
push ds
add cl, byte [eax]
or dl, byte [edx]
sub bl, byte cs:[eax]
sbb ebx, dword [edi]
sub dword [eax], esp
aaa
xor dh, byte [ecx]
xor eax, 0x30343336
cmp dword [eax], edi
aas
inc eax
cmp eax, 0x3b3a3e3c
dec ecx
dec ebx
inc esi
push ebx
dec edi
inc ebx
dec ebp
push ecx
inc ecx
dec esi
inc edx
push esp
inc edi
dec edx
inc ebp
push edx
dec eax
push eax
inc esp
dec esp
pop eax
pop ecx
pop edx
push ebp
push esi
push edi
pop esi
pop edi
pushal
pop ebx
pop esp
pop ebp
jns 0x44a993
jo 0x44a99f
outsb dx, byte [esi]
outsd dx, dword [esi]
push 0x73
imul esp, dword [edi + 0x69], 0x71
bound esp, qword [ebp + 0x66]
arpl word [esp + esi*2 + 0x68], bp
jb 0x44a9b3
js 0x44a99f
jbe 0x44a99e
jne 0x44a8e7
repne lodsb al, byte [esi]
pause
wait
mov ecx, 0xb3f4b6c2
in eax, dx
scasd eax, dword es:[edi]
stosd dword es:[edi], eax
mov al, 0xf8
retf 0xdfb1
invalid
into
sahf
invalid
out dx, eax
int1
jl 0x44aa35
test byte [edx - 0x4a756e41], dh
mov edx, 0xd0adc399
aam 0x20
add byte fs:[ecx - 0x76fbdbbc], cl
xor al, 0x24
call fcn.0040ee32
mov dword [esp + 0xc], 0x10
mov dword [esp + 8], str.Error_encountered
mov dword [esp + 4], ebx
mov dword [esp], 0
call sub.USER32.dll_MessageBoxW
sub esp, 0x10
call fcn.0040a376
mov dword [esp], 2
call sub.msvcrt.dll_exit
cdq
mov ecx, edx
xor ecx, ebp
xor eax, edi
or ecx, eax
je 0x44aaa2
cmp dword [0x7184d0], 0
je 0x44aa32
mov dword [esp + 4], 1
mov dword [esp], 0x7184f0
call sub.msvcrt.dll_longjmp
mov dword [esp], 0x40000
add byte [eax], al
add al, 0
call fcn.004019f2
mov ebx, eax
mov dword [esp], 0x40000
call fcn.004019f2
mov esi, eax
mov dword [esp + 8], edi
mov dword [esp + 4], str.ERROR:_cant_read__lu_bytes
mov dword [esp], ebx
call sub.msvcrt.dll_sprintf
mov dword [esp + 4], esi
mov dword [esp], ebx
call fcn.0040ee32
mov dword [esp + 0xc], 0x10
mov dword [esp + 8], str.Error_encountered
mov dword [esp + 4], esi
mov dword [esp], 0
call sub.USER32.dll_MessageBoxW
sub esp, 0x10
call fcn.0040a376
mov dword [esp], 2
call sub.msvcrt.dll_exit
mov ebx, dword [esp + 0x1c]
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x24]
mov ebp, dword [esp + 0x28]
add esp, 0x2c
ret