Function at 0x447548
Capabilities:
Read file on windows

Disassembly:
push esi
mov esi, edx
push edi
mov edi, ecx
movzx eax, byte [esi + 2]
cmp eax, 0xff
ja 0x44779f
push ebx
je case.0x447495.0
cmp eax, 3
ja case.default.0x447495
jmp dword [eax*4 + 0x4477a8]
lea eax, [edi + edi*2]
cmp dword [eax*4 + 0x22c3080], 0
jne case.default.0x447495
or byte [esi + 1], 0x80
pop ebx
pop edi
pop esi
vzeroupper
ret
lea eax, [edi + edi*2]
cmp dword [eax*4 + 0x22c3080], 0
je 0x4474ad
mov eax, dword [eax*4 + 0x22c3088]
sub eax, 2
je 0x4474ee
sub eax, 3
je 0x4475e9
vpxor xmm0, xmm0, xmm0
pop ebx
vmovdqu ymmword [esi + 5], ymm0
pop edi
mov byte [esi + 0x25], 0
pop esi
vzeroupper
ret
movzx ebx, byte [esi + 3]
movzx eax, byte [esi + 4]
shl ebx, 8
or ebx, eax
cmp ebx, 0x8001
jne 0x447520
vpxor xmm0, xmm0, xmm0
lea ecx, [esi + 5]
vmovdqu ymmword [ecx], ymm0
vzeroupper
call fcn.00447240
pop ebx
pop edi
mov byte [esi + 0x25], al
pop esi
vzeroupper
ret
and ebx, 0xffe0
cmp ebx, 0x7fe0
ja 0x4475aa
push 0
push 0
push dword [0x27c326c]
call fcn.004e014e
push dword [0x27c326c]
push 0x8000
push 1
push 0x81df10
call fcn.004e3264
push dword [0x27c326c]
push 0x8000
push 1
push 0x825f10
call fcn.004e3264
push dword [0x27c326c]
push 0x8000
push 1
push 0x82df10
call fcn.004e3264
push dword [0x27c326c]
push 0x8000
push 1
push 0x835f10
call fcn.004e3264
add esp, 0x4c
shl edi, 0xf
vmovdqu ymm0, ymmword [edi + ebx + 0x81df10]
jmp 0x4475ae
vpxor xmm0, xmm0, xmm0
lea ecx, [esi + 5]
vmovdqu ymmword [ecx], ymm0
vzeroupper
call fcn.00447240
pop ebx
pop edi
mov byte [esi + 0x25], al
pop esi
vzeroupper
ret
lea eax, [edi + edi*2]
cmp dword [eax*4 + 0x22c3080], 0
je 0x4474ad
mov eax, dword [eax*4 + 0x22c3088]
sub eax, 2
je 0x447604
sub eax, 3
jne 0x447619
mov eax, dword [fcn.00404a00]
test eax, eax
je case.default.0x447495
push esi
push edi
call eax
add esp, 8
pop ebx
pop edi
pop esi
vzeroupper
ret
movzx ebx, byte [esi + 3]
movzx eax, byte [esi + 4]
shl ebx, 8
or ebx, eax
cmp ebx, 0x8001
jne 0x44762b
lea ecx, [esi + 5]
call fcn.00447240
pop ebx
pop edi
mov byte [esi + 0x25], al
pop esi
vzeroupper
ret
and ebx, 0xffe0
push ebp
cmp ebx, 0x7fe0
ja 0x447743
push 0
push 0
push dword [0x27c326c]
call fcn.004e014e
push dword [0x27c326c]
push 0x8000
push 1
push 0x81df10
call fcn.004e3264
push dword [0x27c326c]
push 0x8000
push 1
push 0x825f10
call fcn.004e3264
push dword [0x27c326c]
push 0x8000
push 1
push 0x82df10
call fcn.004e3264
push dword [0x27c326c]
push 0x8000
push 1
push 0x835f10
call fcn.004e3264
vmovdqu ymm0, ymmword [esi + 5]
add esp, 0x4c
shl edi, 0xf
lea ebp, [esi + 5]
push 0
push 0
push dword [0x27c326c]
vmovdqu ymmword [edi + ebx + 0x81df10], ymm0
vzeroupper
call fcn.004e014e
push dword [0x27c326c]
push 0x8000
push 1
push 0x81df10
call fcn.004e3051
push dword [0x27c326c]
push 0x8000
push 1
push 0x825f10
call fcn.004e3051
push dword [0x27c326c]
push 0x8000
push 1
push 0x82df10
call fcn.004e3051
push dword [0x27c326c]
push 0x8000
push 1
push 0x835f10
call fcn.004e3051
add esp, 0x4c
mov ecx, ebp
call fcn.00447240
pop ebp
pop ebx
pop edi
mov byte [esi + 0x25], al
pop esi
vzeroupper
ret
lea ebp, [esi + 5]
mov ecx, ebp
call fcn.00447240
pop ebp
pop ebx
pop edi
mov byte [esi + 0x25], al
pop esi
vzeroupper
ret
mov al, byte [esi + 1]
test al, al
js case.default.0x447495
lea ecx, [edi + edi*2]
cmp dword [ecx*4 + 0x22c3080], 0
je 0x447799
mov word [esi + 3], 5
mov eax, dword [ecx*4 + 0x22c3088]
sub eax, 2
je 0x44778e
sub eax, 3
je 0x44778e
pop ebx
pop edi
mov byte [esi + 5], 0
pop esi
vzeroupper
ret
pop ebx
pop edi
mov byte [esi + 5], 1
pop esi
vzeroupper
ret
or al, 0x80
mov byte [esi + 1], al
pop ebx
pop edi
pop esi
vzeroupper
ret