Function at 0x448c7a
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
mov ecx, dword [ebp + 0xc]
push ebx
xor ebx, ebx
push esi
test cl, 0x80
push edi
mov dword [ebp - 0x1c], 0xc
mov dword [ebp - 0x18], ebx
je 0x448b9b
mov dword [ebp - 0x14], ebx
mov byte [ebp - 1], 0x10
jmp 0x448ba6
and byte [ebp - 1], 0
mov dword [ebp - 0x14], 1
mov eax, 0x8000
test eax, ecx
jne 0x448bc0
test ch, 0x40
jne 0x448bbc
cmp dword [0x40c148], eax
je 0x448bc0
or byte [ebp - 1], 0x80
push 3
mov eax, ecx
pop esi
and eax, esi
sub eax, ebx
je 0x448bf8
dec eax
je 0x448bef
dec eax
je 0x448be6
mov dword [0x40bfec], 0x16
mov dword [0x40bff0], ebx
jmp 0x448e0b
mov dword [ebp - 0xc], 0xc0000000
jmp 0x448bff
mov dword [ebp - 0xc], 0x40000000
jmp 0x448bff
mov dword [ebp - 0xc], 0x80000000
mov eax, dword [ebp + 0x10]
cmp eax, 0x10
je 0x448c2d
cmp eax, 0x20
je 0x448c24
cmp eax, 0x30
je 0x448c1b
cmp eax, 0x40
jne 0x448bd1
mov dword [ebp - 0x10], esi
jmp 0x448c30
mov dword [ebp - 0x10], 2
jmp 0x448c30
mov dword [ebp - 0x10], 1
jmp 0x448c30
mov dword [ebp - 0x10], ebx
mov edx, 0x700
mov eax, 0x400
and ecx, edx
mov edi, 0x100
cmp ecx, eax
jg 0x448c7a
je 0x448c75
cmp ecx, ebx
je 0x448c75
cmp ecx, edi
je 0x448c6c
cmp ecx, 0x200
je 0x448c93
cmp ecx, 0x300
jne 0x448bd1
mov dword [ebp - 8], 2
jmp 0x448ca3
mov dword [ebp - 8], 4
jmp 0x448ca3
mov dword [ebp - 8], esi
jmp 0x448ca3
cmp ecx, 0x500
je 0x448c9c
cmp ecx, 0x600
je 0x448c93
cmp ecx, edx
je 0x448c9c
jmp 0x448bd1
mov dword [ebp - 8], 5
jmp 0x448ca3
mov dword [ebp - 8], 1
mov eax, dword [ebp + 0xc]
mov esi, 0x80
test edi, eax
je 0x448cc2
mov ecx, dword [0x40bff4]
not ecx
and ecx, dword [ebp + 0x14]
test cl, 0x80
jne 0x448cc2
push 1
pop esi
test al, 0x40
je 0x448cd0
or esi, 0x4000000
or byte [ebp - 0xa], 1
test ah, 0x10
je 0x448cd7
or esi, edi
test al, 0x20
je 0x448ce3
or esi, 0x8000000
jmp 0x448ced
test al, 0x10
je 0x448ced
or esi, 0x10000000
call fcn.0044a665
mov ebx, eax
or edi, 0xffffffff
cmp ebx, edi
jne 0x448d0e
and dword [0x40bff0], 0
mov dword [0x40bfec], 0x18
jmp 0x448d4c
push 0
push esi
push dword [ebp - 8]
lea eax, [ebp - 0x1c]
push eax
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push dword [ebp + 8]
call dword [0x40908c]
mov esi, eax
cmp esi, edi
je 0x448d3f
push esi
call dword [0x409088]
test eax, eax
jne 0x448d53
push esi
call dword [0x409070]
call dword [0x40906c]
push eax
call fcn.0044a5fe
pop ecx
mov eax, edi
jmp 0x448e29
cmp eax, 2
jne 0x448d5e
or byte [ebp - 1], 0x40
jmp 0x448d67
cmp eax, 3
jne 0x448d67
or byte [ebp - 1], 8
push esi
push ebx
call fcn.0044a6fa
pop ecx
mov al, byte [ebp - 1]
pop ecx
mov esi, ebx
mov ecx, ebx
or al, 1
sar ecx, 5
and esi, 0x1f
mov byte [ebp + 0xb], al
lea edi, [ecx*4 + 0x40d420]
shl esi, 3
mov ecx, dword [edi]
and byte [ebp + 0xb], 0x48
mov byte [ecx + esi + 4], al
jne 0x448e10
test al, 0x80
je 0x448e10
test byte [ebp + 0xc], 2
je 0x448e10
push 2
push 0xffffffffffffffff
push ebx
call fcn.00448427
add esp, 0xc
cmp eax, 0xffffffff
mov dword [ebp - 0x10], eax
jne 0x448dc5
cmp dword [0x40bff0], 0x83
je 0x448e10
jmp 0x448e04
and byte [ebp + 0x13], 0
lea eax, [ebp + 0x13]
push 1
push eax
push ebx
call fcn.00448231
add esp, 0xc
test eax, eax
jne 0x448df2
cmp byte [ebp + 0x13], 0x1a
jne 0x448df2
push dword [ebp - 0x10]
push ebx
call fcn.0044a954
pop ecx
cmp eax, 0xffffffff
pop ecx
je 0x448e04
push 0
push 0
push ebx
call fcn.00448427
add esp, 0xc
cmp eax, 0xffffffff
jne 0x448e10
push ebx
call fcn.00447fd1
pop ecx
or eax, 0xffffffff
jmp 0x448e29
cmp byte [ebp + 0xb], 0
jne 0x448e27
test byte [ebp + 0xc], 8
je 0x448e27
mov eax, dword [edi]
or byte [eax + esi + 4], 0x20
lea eax, [eax + esi + 4]
mov eax, ebx
pop edi
pop esi
pop ebx
leave
ret