Function at 0x1400a4900
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x198
vmovdqa xmmword [rsp + 0x180], xmm10
vmovdqa xmmword [rsp + 0x170], xmm9
vmovdqa xmmword [rsp + 0x160], xmm8
vmovdqa xmmword [rsp + 0x150], xmm7
vmovdqa xmmword [rsp + 0x140], xmm6
mov rsi, rcx
mov rax, rdx
mov qword [rsp + 0x48], rdx
cmp r8d, edx
jne 0x1400a4958
mov rdi, rsi
jmp 0x1400a5835
mov ebx, r9d
mov r14d, r8d
mov ebp, dword [rsp + 0x200]
mov eax, r8d
imul eax, r9d
mov dword [rsp + 0x64], eax
mov ecx, eax
imul ecx, ebp
add ecx, ecx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
test rax, rax
je 0x1400a5809
mov rdi, rax
test ebp, ebp
jle 0x1400a57fb
mov rax, qword [rsp + 0x48]
lea r15d, [r14 + rax*8]
cmp r15d, 0x23
ja 0x1400a5879
movabs rax, 0xe161a1c00
bt rax, r15
jae 0x1400a5879
lea r8d, [rbx - 1]
mov eax, ebp
mov qword [rsp + 0x128], rax
mov r9d, r8d
lea r11, [r9 + 1]
mov r10, r11
and r10, 0xfffffffffffffffc
mov eax, r8d
sub eax, r10d
mov dword [rsp + 0x3c], eax
mov r12d, r11d
and r12d, 3
mov eax, 4
cmovne rax, r12
mov rcx, r11
sub rcx, rax
mov edx, r8d
sub edx, ecx
mov dword [rsp + 0x5c], edx
lea rdx, [rcx + rcx]
mov qword [rsp + 0x108], rdx
shl rcx, 3
mov qword [rsp + 0x110], rcx
mov ecx, r11d
and ecx, 0xf
mov edx, 0x10
cmovne rdx, rcx
neg rdx
lea rcx, [r9 + rdx]
inc rcx
mov edx, r8d
sub edx, ecx
mov dword [rsp + 0x58], edx
mov qword [rsp + 0x40], r11
and r11, 0xfffffffffffffff0
mov qword [rsp + 0x80], r9
sub r9, rax
mov qword [rsp + 0xf0], r9
mov dword [rsp + 0x2c], r8d
sub r8d, r11d
mov dword [rsp + 0x54], r8d
mov eax, ebx
imul eax, dword [rsp + 0x48]
mov dword [rsp + 0x60], eax
vpcmpeqd xmm0, xmm0, xmm0
vmovdqa xmm1, xmmword [0x14012e890]
vmovdqa xmm2, xmmword [0x14012e820]
vmovdqa xmm3, xmmword [str.MMMM]
vmovdqa xmm4, xmmword [0x14012e860]
vmovdqa xmm5, xmmword [0x14012e870]
vmovdqa xmm6, xmmword [0x14012e880]
lea rax, [r10*4]
mov qword [rsp + 0x78], rax
lea rax, [r10*8]
mov qword [rsp + 0xe8], rax
lea rax, [r10 + r10]
mov qword [rsp + 0xe0], rax
lea rax, [rax + rax*2]
mov qword [rsp + 0x70], rax
lea rax, [rcx + rcx]
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0x100], rcx
lea rax, [rcx*4]
mov qword [rsp + 0xd0], rax
lea rax, [r11*4]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xf8], r11
lea rax, [r11 + r11]
mov qword [rsp + 0xc0], rax
lea rax, [rsi + 0x1e]
mov qword [rsp + 0xb8], rax
lea rax, [rsi + 0x1c]
mov qword [rsp + 0xb0], rax
lea rax, [rsi + 0x16]
mov qword [rsp + 0x68], rax
lea rax, [r12*4]
mov qword [rsp + 0x120], rax
lea rax, [r12 + r12]
mov qword [rsp + 0x118], rax
lea rax, [rax + rax*2]
mov qword [rsp + 0x88], rax
lea rax, [rsi + 0x30]
mov qword [rsp + 0xa8], rax
lea rax, [rdi + 0x18]
mov qword [rsp + 0xa0], rax
lea rax, [rsi + 0x18]
mov qword [rsp + 0x98], rax
lea rax, [rdi + 0x30]
mov qword [rsp + 0x90], rax
xor eax, eax
xor r9d, r9d
xor r13d, r13d
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x138], r14
mov qword [rsp + 0x130], r15
jmp 0x1400a4bef
inc r13
add r9d, dword [rsp + 0x60]
add eax, dword [rsp + 0x64]
cmp r13, qword [rsp + 0x128]
mov rbx, qword [rsp + 0x30]
mov r14, qword [rsp + 0x138]
mov r15, qword [rsp + 0x130]
je 0x1400a57fb
mov ecx, r13d
imul ecx, ebx
mov edx, ecx
imul edx, dword [rsp + 0x48]
lea r8, [rsi + rdx*2]
imul ecx, r14d
lea r11, [rdi + rcx*2]
lea edx, [r15 - 0xa]
cmp edx, 0x18
ja case.0x1400a4c30.13
mov ecx, r9d
mov ebx, eax
lea rbp, [rdi + rbx*2]
lea r15, [rsi + rcx*2]
lea r14, [0x1400a58a8]
movsxd rdx, dword [r14 + rdx*4]
add rdx, r14
jmp rdx
cmp dword [rsp + 0x2c], 0
js 0x1400a4bc0
mov edx, dword [rsp + 0x2c]
cmp edx, 0xf
jae 0x1400a500d
mov ecx, edx
jmp 0x1400a509e
cmp dword [rsp + 0x2c], 0
js 0x1400a4bc0
test byte [rsp + 0x30], 3
je 0x1400a55ee
xor ecx, ecx
mov ebx, dword [rsp + 0x2c]
mov r15d, ebx
mov r11, qword [rsp + 0x88]
nop word cs:[rax + rax]
movzx edx, word [r8]
mov word [rbp + rcx + 4], dx
mov word [rbp + rcx + 2], dx
mov word [rbp + rcx], dx
add r8, 2
dec r15d
add rcx, 6
cmp r11d, ecx
jne 0x1400a4c80
add rbp, rcx
mov r11, rbp
cmp ebx, 3
jb 0x1400a4bc0
jmp 0x1400a55fe
cmp dword [rsp + 0x2c], 0
js 0x1400a4bc0
mov edx, dword [rsp + 0x2c]
mov ecx, edx
test byte [rsp + 0x30], 3
je 0x1400a4d0e
xor r8d, r8d
xor r11d, r11d
mov ecx, edx
mov rbx, qword [rsp + 0x118]
nop
vpinsrw xmm7, xmm1, word [r15 + r8], 0
vpshuflw xmm7, xmm7, 0x40
vmovq qword [rbp + r8*4], xmm7
dec ecx
add r11, 0xfffffffffffffff8
add r8, 2
cmp ebx, r8d
jne 0x1400a4ce0
sub rbp, r11
add r15, r8
mov r11, rbp
mov r8, r15
cmp edx, 3
jb 0x1400a4bc0
add ecx, 4
xor ebx, ebx
nop dword [rax]
vpinsrw xmm7, xmm0, word [r8 + rbx], 0
vpshuflw xmm7, xmm7, 0x40
vmovq qword [r11 + rbx*4], xmm7
vpinsrw xmm7, xmm0, word [r8 + rbx + 2], 0
vpshuflw xmm7, xmm7, 0x40
vmovq qword [r11 + rbx*4 + 8], xmm7
vpinsrw xmm7, xmm0, word [r8 + rbx + 4], 0
vpshuflw xmm7, xmm7, 0x40
vmovq qword [r11 + rbx*4 + 0x10], xmm7
vpinsrw xmm7, xmm0, word [r8 + rbx + 6], 0
vpshuflw xmm7, xmm7, 0x40
vmovq qword [r11 + rbx*4 + 0x18], xmm7
add ecx, 0xfffffffc
add rbx, 8
cmp ecx, 3
jg 0x1400a4d20
jmp 0x1400a4bc0
cmp dword [rsp + 0x2c], 0
js 0x1400a4bc0
mov edx, dword [rsp + 0x2c]
cmp edx, 0xf
ja 0x1400a50d1
mov ecx, edx
jmp 0x1400a5165
cmp dword [rsp + 0x2c], 0
js 0x1400a4bc0
test byte [rsp + 0x30], 3
je 0x1400a5675
xor ecx, ecx
mov ebx, dword [rsp + 0x2c]
mov r15d, ebx
mov r11, qword [rsp + 0x88]
nop word cs:[rax + rax]
movzx edx, word [r8]
mov word [rbp + rcx + 4], dx
mov word [rbp + rcx + 2], dx
mov word [rbp + rcx], dx
add r8, 4
dec r15d
add rcx, 6
cmp r11d, ecx
jne 0x1400a4dd0
add rbp, rcx
mov r11, rbp
cmp ebx, 3
jb 0x1400a4bc0
jmp 0x1400a5685
cmp dword [rsp + 0x2c], 0
js 0x1400a4bc0
mov edx, dword [rsp + 0x2c]
mov ecx, edx
test byte [rsp + 0x30], 3
je 0x1400a4e5d
xor r8d, r8d
xor r11d, r11d
mov ecx, edx
mov rbx, qword [rsp + 0x120]
nop
vmovd xmm7, dword [r15 + r8]
vpshuflw xmm7, xmm7, 0x40
vmovq qword [rbp + r8*2], xmm7
dec ecx
add r11, 0xfffffffffffffff8
add r8, 4
cmp ebx, r8d
jne 0x1400a4e30
sub rbp, r11
add r15, r8
mov r11, rbp
mov r8, r15
cmp edx, 3
jb 0x1400a4bc0
add ecx, 4
xor ebx, ebx
nop dword [rax + rax]
vmovd xmm7, dword [r8 + rbx]
vpshuflw xmm7, xmm7, 0x40
vmovq qword [r11 + rbx*2], xmm7
vmovd xmm7, dword [r8 + rbx + 4]
vpshuflw xmm7, xmm7, 0x40
vmovq qword [r11 + rbx*2 + 8], xmm7
vmovd xmm7, dword [r8 + rbx + 8]
vpshuflw xmm7, xmm7, 0x40
vmovq qword [r11 + rbx*2 + 0x10], xmm7
vmovd xmm7, dword [r8 + rbx + 0xc]
vpshuflw xmm7, xmm7, 0x40
vmovq qword [r11 + rbx*2 + 0x18], xmm7
add ecx, 0xfffffffc
add rbx, 0x10
cmp ecx, 3
jg 0x1400a4e70
jmp 0x1400a4bc0
cmp dword [rsp + 0x2c], 0
js 0x1400a4bc0
mov edx, dword [rsp + 0x2c]
cmp edx, 3
jae 0x1400a5189
mov ecx, edx
jmp 0x1400a523c
cmp dword [rsp + 0x2c], 0
js 0x1400a4bc0
mov edx, dword [rsp + 0x2c]
cmp edx, 3
jae 0x1400a5292
mov ecx, edx
jmp 0x1400a5344
cmp dword [rsp + 0x2c], 0
js 0x1400a4bc0
test byte [rsp + 0x30], 3
je 0x1400a56f5
xor r15d, r15d
mov edx, dword [rsp + 0x2c]
nop word cs:[rax + rax]
mov ecx, dword [r8]
mov dword [r11], ecx
movzx ecx, word [r8 + 4]
mov word [r11 + 4], cx
mov word [r11 + 6], 0xffff
add r8, 6
add r11, 8
inc r15
cmp r12d, r15d
jne 0x1400a4f30
mov rcx, qword [rsp + 0x80]
sub ecx, r15d
cmp edx, 3
jb 0x1400a4bc0
jmp 0x1400a5704
cmp dword [rsp + 0x2c], 0
js 0x1400a4bc0
mov edx, dword [rsp + 0x2c]
cmp edx, 3
ja 0x1400a5399
mov ecx, edx
jmp 0x1400a5469
cmp dword [rsp + 0x2c], 0
js 0x1400a4bc0
mov edx, dword [rsp + 0x2c]
cmp edx, 3
jae 0x1400a54b2
mov ecx, edx
jmp 0x1400a559b
cmp dword [rsp + 0x2c], 0
js 0x1400a4bc0
test byte [rsp + 0x30], 3
je 0x1400a5787
xor r15d, r15d
nop word [rax + rax]
mov ecx, dword [r8]
mov dword [r11], ecx
movzx ecx, word [r8 + 4]
mov word [r11 + 4], cx
add r8, 8
add r11, 6
inc r15
cmp r12d, r15d
jne 0x1400a4fd0
mov rcx, qword [rsp + 0x80]
sub ecx, r15d
mov edx, dword [rsp + 0x2c]
cmp edx, 3
jb 0x1400a4bc0
jmp 0x1400a5796
mov rdx, qword [rsp + 0x98]
lea rcx, [rdx + rcx*2]
mov rdx, qword [rsp + 0x90]
lea rbx, [rdx + rbx*2]
add r11, qword [rsp + 0xc8]
add r8, qword [rsp + 0xc0]
xor r15d, r15d
mov rdx, qword [rsp + 0xf8]
vmovq xmm7, qword [rcx + r15*2 - 0x18]
vmovq xmm8, qword [rcx + r15*2 - 0x10]
vmovq xmm9, qword [rcx + r15*2 - 8]
vmovq xmm10, qword [rcx + r15*2]
vpunpcklwd xmm7, xmm7, xmm0
vmovdqu xmmword [rbx + r15*4 - 0x30], xmm7
vpunpcklwd xmm7, xmm8, xmm0
vmovdqu xmmword [rbx + r15*4 - 0x20], xmm7
vpunpcklwd xmm7, xmm9, xmm0
vmovdqu xmmword [rbx + r15*4 - 0x10], xmm7
vpunpcklwd xmm7, xmm10, xmm0
vmovdqu xmmword [rbx + r15*4], xmm7
add r15, 0x10
cmp rdx, r15
jne 0x1400a5040
mov ecx, dword [rsp + 0x54]
cmp qword [rsp + 0x40], rdx
je 0x1400a4bc0
inc ecx
xor ebx, ebx
nop word cs:[rax + rax]
movzx edx, word [r8 + rbx]
mov word [r11 + rbx*2], dx
mov word [r11 + rbx*2 + 2], 0xffff
dec ecx
add rbx, 2
test ecx, ecx
jg 0x1400a50b0
jmp 0x1400a4bc0
mov rdx, qword [rsp + 0xa8]
lea rcx, [rdx + rcx*2]
mov rdx, qword [rsp + 0xa0]
lea r15, [rdx + rbx*2]
add r11, qword [rsp + 0xd8]
add r8, qword [rsp + 0xd0]
xor ebx, ebx
mov rdx, qword [rsp + 0x100]
nop word cs:[rax + rax]
vmovdqu xmm7, xmmword [rcx + rbx*4 - 0x30]
vmovdqu xmm8, xmmword [rcx + rbx*4 - 0x10]
vpshuflw xmm9, xmmword [rcx + rbx*4 - 0x20], 0xe8
vpshufb xmm7, xmm7, xmm2
vpshufhw xmm9, xmm9, 0xe8
vpshuflw xmm10, xmmword [rcx + rbx*4], 0xe8
vpshufb xmm8, xmm8, xmm2
vpshufhw xmm10, xmm10, 0xe8
vinsertf128 ymm9, ymm9, xmm10, 1
vinsertf128 ymm7, ymm7, xmm8, 1
vshufps ymm7, ymm7, ymm9, 0x84
vmovups ymmword [r15 + rbx*2 - 0x18], ymm7
add rbx, 0x10
cmp rdx, rbx
jne 0x1400a5110
mov ecx, dword [rsp + 0x58]
inc ecx
xor ebx, ebx
nop dword [rax]
movzx edx, word [r8 + rbx*2]
mov word [r11 + rbx], dx
dec ecx
add rbx, 2
test ecx, ecx
jg 0x1400a5170
jmp 0x1400a4bc0
mov rdx, qword [rsp + 0x68]
lea rcx, [rdx + rcx*2]
add r11, qword [rsp + 0xe0]
add r8, qword [rsp + 0x70]
xor r15d, r15d
nop word cs:[rax + rax]
movzx edx, word [rcx - 0x12]
vmovd xmm7, edx
vpinsrw xmm7, xmm7, word [rcx - 0xc], 2
vpinsrw xmm7, xmm7, word [rcx - 6], 4
vpinsrw xmm7, xmm7, word [rcx], 6
movzx edx, word [rcx - 0x14]
vmovd xmm8, edx
vpinsrw xmm8, xmm8, word [rcx - 0xe], 2
vpinsrw xmm8, xmm8, word [rcx - 8], 4
vpinsrw xmm8, xmm8, word [rcx - 2], 6
movzx edx, word [rcx - 0x16]
vmovd xmm9, edx
vpinsrw xmm9, xmm9, word [rcx - 0x10], 2
vpinsrw xmm9, xmm9, word [rcx - 0xa], 4
vpinsrw xmm9, xmm9, word [rcx - 4], 6
vpmulld xmm9, xmm9, xmm3
vpmulld xmm8, xmm8, xmm4
vpmulld xmm7, xmm7, xmm5
vpaddd xmm7, xmm8, xmm7
vpaddd xmm7, xmm9, xmm7
vpshufb xmm7, xmm7, xmm6
vmovq qword [rbp + r15*2], xmm7
add r15, 4
add rcx, 0x18
cmp r10, r15
jne 0x1400a51b0
mov ecx, dword [rsp + 0x3c]
cmp qword [rsp + 0x40], r10
je 0x1400a4bc0
inc ecx
add r8, 4
nop word cs:[rax + rax]
movzx edx, word [r8]
movzx ebx, word [r8 - 2]
movzx ebp, word [r8 - 4]
imul ebp, ebp, 0x4d
imul ebx, ebx, 0x96
lea r15d, [rdx + rdx*8]
lea r15d, [r15 + r15*2]
add edx, edx
add edx, r15d
add edx, ebx
add edx, ebp
shr edx, 8
mov word [r11], dx
add r11, 2
dec ecx
add r8, 6
test ecx, ecx
jg 0x1400a5250
jmp 0x1400a4bc0
mov rdx, qword [rsp + 0x68]
lea rcx, [rdx + rcx*2]
add r11, qword [rsp + 0x78]
add r8, qword [rsp + 0x70]
xor r15d, r15d
nop dword [rax + rax]
movzx edx, word [rcx - 0x12]
vmovd xmm7, edx
vpinsrw xmm7, xmm7, word [rcx - 0xc], 2
vpinsrw xmm7, xmm7, word [rcx - 6], 4
vpinsrw xmm7, xmm7, word [rcx], 6
movzx edx, word [rcx - 0x14]
vmovd xmm8, edx
vpinsrw xmm8, xmm8, word [rcx - 0xe], 2
vpinsrw xmm8, xmm8, word [rcx - 8], 4
vpinsrw xmm8, xmm8, word [rcx - 2], 6
movzx edx, word [rcx - 0x16]
vmovd xmm9, edx
vpinsrw xmm9, xmm9, word [rcx - 0x10], 2
vpinsrw xmm9, xmm9, word [rcx - 0xa], 4
vpinsrw xmm9, xmm9, word [rcx - 4], 6
vpmulld xmm9, xmm9, xmm3
vpmulld xmm8, xmm8, xmm4
vpmulld xmm7, xmm7, xmm5
vpaddd xmm7, xmm8, xmm7
vpaddd xmm7, xmm9, xmm7
vpshufb xmm7, xmm7, xmm6
vpunpcklwd xmm7, xmm7, xmm0
vmovdqu xmmword [rbp + r15*4], xmm7
add r15, 4
add rcx, 0x18
cmp r10, r15
jne 0x1400a52b0
mov ecx, dword [rsp + 0x3c]
cmp qword [rsp + 0x40], r10
je 0x1400a4bc0
inc ecx
add r8, 4
nop word [rax + rax]
movzx edx, word [r8]
movzx ebx, word [r8 - 2]
movzx ebp, word [r8 - 4]
imul ebp, ebp, 0x4d
imul ebx, ebx, 0x96
lea r15d, [rdx + rdx*8]
lea r15d, [r15 + r15*2]
add edx, edx
add edx, r15d
add edx, ebx
add edx, ebp
shr edx, 8
mov word [r11], dx
mov word [r11 + 2], 0xffff
dec ecx
add r8, 6
add r11, 4
test ecx, ecx
jg 0x1400a5350
jmp 0x1400a4bc0
mov rdx, qword [rsp + 0xb0]
lea rcx, [rdx + rcx*2]
add r11, qword [rsp + 0x108]
add r8, qword [rsp + 0x110]
mov r15, 0xffffffffffffffff
mov rbx, qword [rsp + 0xf0]
nop word cs:[rax + rax]
movzx edx, word [rcx + r15*8 - 0x10]
vmovd xmm7, edx
vpinsrw xmm7, xmm7, word [rcx + r15*8 - 8], 2
vpinsrw xmm7, xmm7, word [rcx + r15*8], 4
vpinsrw xmm7, xmm7, word [rcx + r15*8 + 8], 6
movzx edx, word [rcx + r15*8 - 0x12]
vmovd xmm8, edx
vpinsrw xmm8, xmm8, word [rcx + r15*8 - 0xa], 2
vpinsrw xmm8, xmm8, word [rcx + r15*8 - 2], 4
vpinsrw xmm8, xmm8, word [rcx + r15*8 + 6], 6
movzx edx, word [rcx + r15*8 - 0x14]
vmovd xmm9, edx
vpinsrw xmm9, xmm9, word [rcx + r15*8 - 0xc], 2
vpinsrw xmm9, xmm9, word [rcx + r15*8 - 4], 4
vpinsrw xmm9, xmm9, word [rcx + r15*8 + 4], 6
vpmulld xmm9, xmm9, xmm3
vpmulld xmm8, xmm8, xmm4
vpmulld xmm7, xmm7, xmm5
vpaddd xmm7, xmm8, xmm7
vpaddd xmm7, xmm9, xmm7
vpshufb xmm7, xmm7, xmm6
vmovq qword [rbp + r15*2 + 2], xmm7
add r15, 4
cmp rbx, r15
jne 0x1400a53d0
mov ecx, dword [rsp + 0x5c]
inc ecx
xor r15d, r15d
nop
movzx edx, word [r8 + r15*4 + 4]
movzx ebx, word [r8 + r15*4 + 2]
movzx ebp, word [r8 + r15*4]
imul ebp, ebp, 0x4d
imul ebx, ebx, 0x96
lea r14d, [rdx + rdx*8]
lea r14d, [r14 + r14*2]
add edx, edx
add edx, r14d
add edx, ebx
add edx, ebp
shr edx, 8
mov word [r11 + r15], dx
dec ecx
add r15, 2
test ecx, ecx
jg 0x1400a5470
jmp 0x1400a4bc0
mov rdx, qword [rsp + 0xb8]
lea rcx, [rdx + rcx*2]
add r11, qword [rsp + 0x78]
add r8, qword [rsp + 0xe8]
xor r15d, r15d
nop
movzx edx, word [rcx + r15*8 - 0x1a]
vmovd xmm7, edx
vpinsrw xmm7, xmm7, word [rcx + r15*8 - 0x12], 2
vpinsrw xmm7, xmm7, word [rcx + r15*8 - 0xa], 4
vpinsrw xmm7, xmm7, word [rcx + r15*8 - 2], 6
movzx edx, word [rcx + r15*8 - 0x1c]
vmovd xmm8, edx
vpinsrw xmm8, xmm8, word [rcx + r15*8 - 0x14], 2
vpinsrw xmm8, xmm8, word [rcx + r15*8 - 0xc], 4
vpinsrw xmm8, xmm8, word [rcx + r15*8 - 4], 6
movzx edx, word [rcx + r15*8 - 0x1e]
vmovd xmm9, edx
vpinsrw xmm9, xmm9, word [rcx + r15*8 - 0x16], 2
vpinsrw xmm9, xmm9, word [rcx + r15*8 - 0xe], 4
vpinsrw xmm9, xmm9, word [rcx + r15*8 - 6], 6
vpmulld xmm9, xmm9, xmm3
vpmulld xmm8, xmm8, xmm4
vpmulld xmm7, xmm7, xmm5
vpaddd xmm7, xmm8, xmm7
vpaddd xmm7, xmm9, xmm7
vpshufb xmm7, xmm7, xmm6
movzx edx, word [rcx + r15*8 - 0x18]
vmovd xmm8, edx
vpinsrw xmm8, xmm8, word [rcx + r15*8 - 0x10], 1
vpinsrw xmm8, xmm8, word [rcx + r15*8 - 8], 2
vpinsrw xmm8, xmm8, word [rcx + r15*8], 3
vpunpcklwd xmm7, xmm7, xmm8
vmovdqu xmmword [rbp + r15*4], xmm7
add r15, 4
cmp r10, r15
jne 0x1400a54d0
mov ecx, dword [rsp + 0x3c]
cmp qword [rsp + 0x40], r10
je 0x1400a4bc0
inc ecx
xor r15d, r15d
movzx edx, word [r8 + r15*2 + 4]
movzx ebx, word [r8 + r15*2 + 2]
movzx ebp, word [r8 + r15*2]
imul ebp, ebp, 0x4d
imul ebx, ebx, 0x96
lea r14d, [rdx + rdx*8]
lea r14d, [r14 + r14*2]
add edx, edx
add edx, r14d
add edx, ebx
add edx, ebp
shr edx, 8
mov word [r11 + r15], dx
movzx edx, word [r8 + r15*2 + 6]
mov word [r11 + r15 + 2], dx
dec ecx
add r15, 4
test ecx, ecx
jg 0x1400a55a0
jmp 0x1400a4bc0
mov ebx, dword [rsp + 0x2c]
mov r15d, ebx
cmp ebx, 3
jb 0x1400a4bc0
add r15d, 4
add r11, 0x16
nop word cs:[rax + rax]
movzx ecx, word [r8]
mov word [r11 - 0x12], cx
mov word [r11 - 0x14], cx
mov word [r11 - 0x16], cx
movzx ecx, word [r8 + 2]
mov word [r11 - 0xc], cx
mov word [r11 - 0xe], cx
mov word [r11 - 0x10], cx
movzx ecx, word [r8 + 4]
mov word [r11 - 6], cx
mov word [r11 - 8], cx
mov word [r11 - 0xa], cx
movzx ecx, word [r8 + 6]
mov word [r11], cx
mov word [r11 - 2], cx
mov word [r11 - 4], cx
add r15d, 0xfffffffc
add r11, 0x18
add r8, 8
cmp r15d, 3
jg 0x1400a5610
jmp 0x1400a4bc0
mov ebx, dword [rsp + 0x2c]
mov r15d, ebx
cmp ebx, 3
jb 0x1400a4bc0
add r15d, 4
add r11, 0x16
nop dword [rax]
movzx ecx, word [r8]
mov word [r11 - 0x12], cx
mov word [r11 - 0x14], cx
mov word [r11 - 0x16], cx
movzx ecx, word [r8 + 4]
mov word [r11 - 0xc], cx
mov word [r11 - 0xe], cx
mov word [r11 - 0x10], cx
movzx ecx, word [r8 + 8]
mov word [r11 - 6], cx
mov word [r11 - 8], cx
mov word [r11 - 0xa], cx
movzx ecx, word [r8 + 0xc]
mov word [r11], cx
mov word [r11 - 2], cx
mov word [r11 - 4], cx
add r15d, 0xfffffffc
add r11, 0x18
add r8, 0x10
cmp r15d, 3
jg 0x1400a5690
jmp 0x1400a4bc0
mov edx, dword [rsp + 0x2c]
mov ecx, edx
cmp edx, 3
jb 0x1400a4bc0
add ecx, 4
nop word [rax + rax]
mov edx, dword [r8]
mov dword [r11], edx
movzx edx, word [r8 + 4]
mov word [r11 + 4], dx
mov word [r11 + 6], 0xffff
mov edx, dword [r8 + 6]
mov dword [r11 + 8], edx
movzx edx, word [r8 + 0xa]
mov word [r11 + 0xc], dx
mov word [r11 + 0xe], 0xffff
mov edx, dword [r8 + 0xc]
mov dword [r11 + 0x10], edx
movzx edx, word [r8 + 0x10]
mov word [r11 + 0x14], dx
mov word [r11 + 0x16], 0xffff
mov edx, dword [r8 + 0x12]
mov dword [r11 + 0x18], edx
movzx edx, word [r8 + 0x16]
mov word [r11 + 0x1c], dx
mov word [r11 + 0x1e], 0xffff
add ecx, 0xfffffffc
add r8, 0x18
add r11, 0x20
cmp ecx, 3
jg 0x1400a5710
jmp 0x1400a4bc0
mov edx, dword [rsp + 0x2c]
mov ecx, edx
cmp edx, 3
jb 0x1400a4bc0
add ecx, 4
nop dword [rax]
mov edx, dword [r8]
mov dword [r11], edx
movzx edx, word [r8 + 4]
mov word [r11 + 4], dx
mov edx, dword [r8 + 8]
mov dword [r11 + 6], edx
movzx edx, word [r8 + 0xc]
mov word [r11 + 0xa], dx
mov edx, dword [r8 + 0x10]
mov dword [r11 + 0xc], edx
movzx edx, word [r8 + 0x14]
mov word [r11 + 0x10], dx
mov edx, dword [r8 + 0x18]
mov dword [r11 + 0x12], edx
movzx edx, word [r8 + 0x1c]
mov word [r11 + 0x16], dx
add ecx, 0xfffffffc
add r8, 0x20
add r11, 0x18
cmp ecx, 3
jg 0x1400a57a0
jmp 0x1400a4bc0
mov rcx, rsi
vzeroupper
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x1400a5835
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov eax, dword [0x1402263a0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, str.outofmem
mov qword [rax + 8], rcx
xor edi, edi
mov rax, rdi
vmovaps xmm6, xmmword [rsp + 0x140]
vmovaps xmm7, xmmword [rsp + 0x150]
vmovaps xmm8, xmmword [rsp + 0x160]
vmovaps xmm9, xmmword [rsp + 0x170]
vmovaps xmm10, xmmword [rsp + 0x180]
add rsp, 0x198
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rbx, qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rsi
call rbx
mov rcx, rdi
call rbx
mov eax, dword [0x1402263a0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, str.unsupported
jmp 0x1400a582c