Function at 0x140060c00
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x198
movups xmmword [rsp + 0xf0], xmm6
movups xmmword [rsp + 0x100], xmm7
movups xmmword [rsp + 0x110], xmm8
movups xmmword [rsp + 0x120], xmm9
movups xmmword [rsp + 0x130], xmm10
movups xmmword [rsp + 0x140], xmm11
movups xmmword [rsp + 0x150], xmm12
movups xmmword [rsp + 0x160], xmm13
movups xmmword [rsp + 0x170], xmm14
movups xmmword [rsp + 0x180], xmm15
movsd xmm1, qword [rsp + 0x200]
mov eax, dword [rsp + 0x208]
movsxd rbx, r8d
movd xmm0, edx
mov dword [rcx + 0x10], r9d
mov r13, rcx
movd xmm5, ebx
mov byte [rcx + 0x20], al
mov ebp, edx
mov esi, r9d
punpckldq xmm0, xmm5
mov qword [rcx + 0x38], 0
movq qword [rcx + 8], xmm0
pxor xmm0, xmm0
mov dword [rcx + 0x40], 1
movups xmmword [rcx + 0x28], xmm0
test al, al
jne 0x140060e07
movsd xmm0, qword [0x1402279e8]
comisd xmm0, xmm1
jae 0x140061d25
movsd xmm0, qword [0x1402279f0]
comisd xmm0, xmm1
jae 0x140061d78
movsd xmm0, qword [0x1402279f8]
comisd xmm0, xmm1
jae 0x140061d90
movsd xmm0, qword [0x140227a00]
comisd xmm0, xmm1
jae 0x140061f38
movsd xmm0, qword [0x140227a08]
comisd xmm0, xmm1
jae 0x140061d89
movsd xmm0, qword [0x140227a10]
comisd xmm0, xmm1
jae 0x140061f1a
movsd xmm0, qword [0x140227a18]
comisd xmm0, xmm1
jae 0x140061f24
movsd xmm0, qword [0x140227a20]
comisd xmm0, xmm1
jae 0x140061f2e
movsd xmm0, qword [0x1402279e0]
comisd xmm0, xmm1
jae 0x140061f5a
movsd xmm0, qword [0x1402279d8]
comisd xmm0, xmm1
jae 0x140061f64
movsd xmm0, qword [0x140227a28]
comisd xmm0, xmm1
jae 0x140061f50
movsd xmm14, qword [0x140227a30]
mov edi, 0x1e
mov edx, 0x108
movsd xmm0, qword [0x140227a38]
mov dword [r13], edi
imul edi, ebx
lea rax, [0x14035a480]
add rax, rdx
movsd qword [r13 + 0x18], xmm0
mov qword [rsp + 0x40], rax
mov dword [r13 + 0x24], edi
cmp ebp, 0xffffffff
jne 0x140060ef2
mulsd xmm0, qword [0x140227a40]
mulsd xmm0, qword [0x140227a48]
call fcn.140013bc0
movq xmm8, qword [0x1402278d0]
movsd xmm13, qword [0x1402278c8]
andpd xmm8, xmm0
comisd xmm13, xmm8
ja 0x1400618da
cvttsd2si ebp, xmm0
jmp 0x140060ef2
movsd xmm0, qword [0x140227990]
comisd xmm0, xmm1
jae 0x14006190b
movsd xmm0, qword [0x140227998]
comisd xmm0, xmm1
jae 0x140061d7f
movsd xmm0, qword [0x1402279a0]
comisd xmm0, xmm1
jae 0x140061f06
movsd xmm0, qword [0x1402279a8]
comisd xmm0, xmm1
jae 0x140061ef2
movsd xmm0, qword [0x1402279b0]
comisd xmm0, xmm1
jae 0x140061efc
movsd xmm0, qword [0x1402279b8]
comisd xmm0, xmm1
jae 0x140061d97
movsd xmm0, qword [0x140227988]
comisd xmm0, xmm1
jae 0x140061da1
movsd xmm0, qword [0x140227980]
comisd xmm0, xmm1
jae 0x140061f10
movsd xmm0, qword [0x1402279c0]
mov eax, 8
comisd xmm0, xmm1
jae 0x14006190d
movsd xmm14, qword [0x1402279c8]
mov edi, 0x18
mov edx, 0xd8
movsd xmm0, qword [0x1402279d0]
mov dword [r13], edi
imul edi, ebx
lea rax, [0x14035a5a0]
add rax, rdx
movsd qword [r13 + 0x18], xmm0
mov qword [rsp + 0x40], rax
mov dword [r13 + 0x24], edi
cmp ebp, 0xffffffff
je 0x140060dc7
lea eax, [rbp + rsi]
mov dword [r13 + 4], ebp
imul eax, edi
cdqe
lea rcx, [rax*8 + 0x40]
call sub.msvcrt.dll_malloc
mov ecx, esi
movsd qword [rsp + 0x50], xmm14
mov qword [r13 + 0x28], rax
add rax, 0x3f
sar ecx, 1
and rax, 0xffffffffffffffc0
mov dword [rsp + 0x38], ecx
mov qword [r13 + 0x30], rax
mov r14, rax
mov eax, 1
sub eax, ecx
mov dword [rsp + 0x20], eax
mov edx, eax
lea eax, [rbp + rcx]
cmp edx, eax
jg 0x1400614e0
mov qword [rsp + 0x1e0], r13
lea rsi, [rsp + 0x50]
movsd xmm13, qword [0x1402278c8]
movq xmm8, qword [0x1402278d0]
movsd xmm11, qword [0x1402278a0]
movsd xmm12, qword [0x140227a58]
movq xmm9, qword [0x140227ae0]
movsd xmm10, qword [0x140227b08]
nop word [rax + rax]
pxor xmm7, xmm7
pxor xmm0, xmm0
movupd xmm1, xmm14
mov eax, ebp
sub eax, dword [rsp + 0x20]
cvtsi2sd xmm0, ebp
cvtsi2sd xmm7, eax
divsd xmm7, xmm0
movupd xmm0, xmm8
andpd xmm0, xmm14
comisd xmm13, xmm0
movsd qword [rsp + 0x68], xmm7
jbe 0x140060fe2
cvttsd2si rax, xmm14
pxor xmm0, xmm0
cvtsi2sd xmm0, rax
cmpnlesd xmm1, xmm0
andpd xmm1, xmm11
addsd xmm1, xmm0
cvttsd2si ebp, xmm1
movsd xmm2, qword [0x140227a50]
lea eax, [rbp + rbp]
mov edi, ebp
mov dword [rsp + 0x64], ebp
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x40]
neg edi
mov dword [rsp + 0xe0], edi
minsd xmm2, qword [rax]
movsd xmm15, qword [rax + 8]
andpd xmm15, xmm8
maxsd xmm2, xmm11
movsd qword [rsp + 0x78], xmm15
movsd qword [rsp + 0xc8], xmm2
comisd xmm12, xmm2
ja 0x140061460
movupd xmm6, xmm12
movupd xmm0, xmm2
movsd qword [rsp + 0x28], xmm2
divsd xmm6, xmm2
call fcn.140013bc0
movsd xmm1, qword [0x140227a98]
movsd xmm2, qword [rsp + 0x28]
sqrtsd xmm2, xmm2
divsd xmm0, xmm2
mulsd xmm1, xmm6
subsd xmm1, qword [0x140227aa0]
mulsd xmm1, xmm6
addsd xmm1, qword [0x140227aa8]
mulsd xmm1, xmm6
subsd xmm1, qword [0x140227ab0]
mulsd xmm1, xmm6
addsd xmm1, qword [0x140227ab8]
mulsd xmm1, xmm6
subsd xmm1, qword [0x140227ac0]
mulsd xmm1, xmm6
addsd xmm1, qword [0x140227ac8]
mulsd xmm1, xmm6
addsd xmm1, qword [0x140227ad0]
mulsd xmm1, xmm6
addsd xmm1, qword [0x140227ad8]
mulsd xmm0, xmm1
movupd xmm1, xmm11
shl rbx, 3
mov r12, r14
divsd xmm1, xmm0
movupd xmm0, xmm11
divsd xmm0, xmm14
xorpd xmm14, xmm9
movsd qword [rsp + 0xd0], xmm1
movsd qword [rsp + 0x58], xmm0
mulsd xmm0, xmm7
movsd qword [rsp + 0xd8], xmm0
pxor xmm0, xmm0
cvtsi2sd xmm0, edi
addsd xmm0, xmm7
comisd xmm14, xmm0
jbe 0x140061133
mov rcx, rsi
mov edi, 1
lea r12, [r14 + rbx]
call fcn.14005b740
mov qword [r14], 0
sub edi, ebp
movsd xmm0, qword [0x140227af0]
mulsd xmm0, xmm7
call fcn.1400148e0
movsd xmm6, qword [0x140227af8]
mulsd xmm6, xmm0
test dil, 1
je 0x14006115b
xorpd xmm6, xmm9
movupd xmm0, xmm7
xor eax, eax
movsd xmm4, qword [0x140227b00]
subsd xmm0, xmm11
andpd xmm0, xmm8
comisd xmm0, xmmword [0x140227b00]
setb al
mov ebp, eax
mov dword [rsp + 0x28], eax
neg ebp
comisd xmm4, xmm0
jbe 0x140061400
cmp edi, ebp
jge 0x140061575
mov byte [rsp + 0x30], 1
mov r13, r12
mov r15d, edi
nop dword [rax + rax]
mov rcx, rsi
call fcn.14005b740
andpd xmm0, xmm8
addsd xmm0, xmm10
call fcn.1400140d0
mulsd xmm0, xmm15
call fcn.140013bc0
pxor xmm1, xmm1
cvtsi2sd xmm1, r15d
mulsd xmm0, xmm6
add r15d, 1
xorpd xmm6, xmm9
addsd xmm1, xmm7
divsd xmm0, xmm1
movsd qword [r13], xmm0
add r13, rbx
cmp ebp, r15d
jg 0x1400611a8
mov eax, dword [rsp + 0x28]
mov edx, 0
not eax
sub eax, edi
cmp edi, ebp
cmovl edx, eax
add rax, 1
cmp edi, ebp
lea ecx, [rdi + rdx + 1]
mov edx, 1
cmovge rax, rdx
mov dword [rsp + 0x28], ecx
imul rax, rbx
add r12, rax
cmp byte [rsp + 0x30], 0
jne 0x140061430
mov rcx, rsi
call fcn.14005b740
andpd xmm0, xmm8
addsd xmm0, xmm10
call fcn.1400140d0
mulsd xmm0, xmm15
call fcn.140013bc0
mulsd xmm0, xmm6
divsd xmm0, xmm7
movsd qword [r12], xmm0
mov r13d, dword [rsp + 0x64]
mov ebp, dword [rsp + 0x28]
lea edi, [r13 - 2]
cmp edi, ebp
jle 0x14006156e
mov r15, r12
nop word [rax + rax]
mov rcx, rsi
add ebp, 1
xorpd xmm6, xmm9
add r15, rbx
call fcn.14005b740
andpd xmm0, xmm8
addsd xmm0, xmm10
call fcn.1400140d0
mulsd xmm0, xmm15
call fcn.140013bc0
pxor xmm1, xmm1
cvtsi2sd xmm1, ebp
mulsd xmm0, xmm6
addsd xmm1, xmm7
divsd xmm0, xmm1
movsd qword [r15], xmm0
cmp edi, ebp
jne 0x140061280
lea eax, [r13 - 3]
sub eax, dword [rsp + 0x28]
add rax, 1
imul rax, rbx
add r12, rax
add edi, 1
pxor xmm7, xmm7
add rbx, r12
cvtsi2sd xmm7, edi
addsd xmm7, qword [rsp + 0x68]
comisd xmm7, xmmword [rsp + 0x50]
ja 0x1400614c0
mov rcx, rsi
call fcn.14005b740
andpd xmm0, xmm8
addsd xmm0, xmm10
call fcn.1400140d0
mulsd xmm0, xmm15
call fcn.140013bc0
mulsd xmm6, xmm0
xorpd xmm6, xmm9
divsd xmm6, xmm7
mov rax, qword [rsp + 0x1e0]
movsd qword [rbx], xmm6
movsxd rbx, dword [rax + 0xc]
mov eax, dword [rax]
test eax, eax
jle 0x140061384
movsxd r8, ebx
mov rcx, r14
pxor xmm0, xmm0
mov edx, eax
shl r8, 3
cmp ebx, 1
jne 0x1400613c8
nop dword [rax]
addsd xmm0, qword [rcx]
add rcx, r8
sub edx, 1
jne 0x140061358
movupd xmm1, xmm11
mov rdx, r14
divsd xmm1, xmm0
movsd xmm0, qword [rdx]
mulsd xmm0, xmm1
movsd qword [rdx], xmm0
add rdx, r8
sub eax, 1
jne 0x140061370
mov rax, qword [rsp + 0x1e0]
add dword [rsp + 0x20], 1
mov ecx, dword [rsp + 0x20]
movsxd rax, dword [rax + 0x24]
mov rdi, rax
lea r14, [r14 + rax*8]
mov rax, qword [rsp + 0x1e0]
mov ebp, dword [rax + 4]
mov eax, dword [rsp + 0x38]
add eax, ebp
cmp eax, ecx
jl 0x1400614d0
movsd xmm14, qword [rsp + 0x50]
jmp 0x140060f90
addsd xmm0, qword [rcx]
add rcx, r8
sub edx, 1
jne 0x1400613c8
movupd xmm1, xmm11
mov rdx, r14
divsd xmm1, xmm0
movsd xmm0, qword [rdx]
mulsd xmm0, xmm1
movsd qword [rdx], xmm0
add rdx, r8
sub eax, 1
jne 0x1400613e0
jmp 0x140061384
movupd xmm0, xmm7
andpd xmm0, xmm8
comisd xmm0, xmmword [0x140227b00]
setb byte [rsp + 0x30]
cmp edi, ebp
jl 0x14006119d
cmp byte [rsp + 0x30], 0
mov dword [rsp + 0x28], edi
je 0x140061230
nop dword [rax]
mov rcx, rsi
call fcn.14005b740
andpd xmm0, xmm8
addsd xmm0, xmm10
call fcn.1400140d0
mulsd xmm0, xmm15
call fcn.140013bc0
movsd qword [r12], xmm0
jmp 0x14006125f
mulsd xmm2, qword [0x140227a60]
movsd xmm0, qword [0x140227a68]
mulsd xmm2, xmm2
mulsd xmm0, xmm2
addsd xmm0, qword [0x140227a70]
mulsd xmm0, xmm2
addsd xmm0, qword [0x140227a78]
mulsd xmm0, xmm2
addsd xmm0, qword [0x140227a80]
mulsd xmm0, xmm2
addsd xmm0, qword [0x140227a88]
mulsd xmm0, xmm2
addsd xmm0, qword [0x140227a90]
mulsd xmm0, xmm2
addsd xmm0, xmm11
jmp 0x1400610cb
pxor xmm6, xmm6
jmp 0x14006132a
mov r13, qword [rsp + 0x1e0]
mov esi, dword [r13 + 0x10]
mov r14, qword [r13 + 0x30]
lea eax, [rbp + 1]
imul eax, edi
cdqe
shl rax, 3
lea rcx, [r14 + rax]
cmp esi, 8
je 0x14006157e
cmp ebx, 2
je 0x1400617df
movups xmm6, xmmword [rsp + 0xf0]
movups xmm7, xmmword [rsp + 0x100]
movups xmm8, xmmword [rsp + 0x110]
movups xmm9, xmmword [rsp + 0x120]
movups xmm10, xmmword [rsp + 0x130]
movups xmm11, xmmword [rsp + 0x140]
movups xmm12, xmmword [rsp + 0x150]
movups xmm13, xmmword [rsp + 0x160]
movups xmm14, xmmword [rsp + 0x170]
movups xmm15, xmmword [rsp + 0x180]
add rsp, 0x198
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov edi, ebp
jmp 0x1400612dc
mov dword [rsp + 0x28], edi
jmp 0x140061430
lea eax, [rdi + rdi]
lea r9d, [rdi*4]
lea r15d, [rax + rdi]
lea r8d, [rdi*8]
lea r10d, [r9 + rdi]
lea r11d, [r15 + r15]
sub r8d, edi
cmp ebx, 3
je 0x14006192d
cmp ebx, 4
jne 0x140061502
cmp rcx, r14
jbe 0x140061f6e
movsd xmm5, qword [0x140227bc0]
movsxd r8, r8d
movsxd r11, r11d
cdqe
movsxd r10, r10d
movsxd r9, r9d
movsxd r15, r15d
movsxd rsi, edi
movsd qword [rsp + 0x38], xmm5
shl r10, 3
movsd xmm5, qword [0x140227bc8]
movsd xmm15, qword [0x140227ba0]
movsd xmm14, qword [0x140227ba8]
shl r9, 3
movsd xmm11, qword [0x140227930]
lea rdx, [r8*8]
movsd qword [rsp + 0x20], xmm5
movsd xmm5, qword [0x140227bd0]
shl rsi, 3
movsd xmm10, qword [0x140227bb0]
lea r8, [r11*8]
lea rbx, [rax*8]
movsd xmm13, qword [0x140227bb8]
mov rax, r14
movsd qword [rsp + 0x28], xmm5
movsd xmm5, qword [0x140227bd8]
lea r11, [r15*8]
movsd qword [rsp + 0x30], xmm5
movsd xmm8, qword [rax + r9]
movsd xmm2, qword [rax + rsi]
add rax, 0x20
movsd xmm1, qword [rax + r10 - 0x20]
movsd xmm7, qword [rax + rbx - 0x20]
movupd xmm0, xmm2
movupd xmm9, xmm8
movsd xmm6, qword [rax + r8 - 0x20]
movsd xmm5, qword [rax - 0x20]
subsd xmm0, xmm1
subsd xmm9, xmm7
movsd xmm3, qword [rax + r11 - 0x20]
movsd xmm4, qword [rax + rdx - 0x20]
movupd xmm12, xmm3
mulsd xmm9, xmm14
mulsd xmm0, xmm15
addsd xmm0, xmm9
movupd xmm9, xmm6
subsd xmm9, xmm5
mulsd xmm9, xmm11
addsd xmm0, xmm9
movupd xmm9, xmm4
subsd xmm4, xmm5
mulsd xmm9, xmm11
mulsd xmm0, xmm10
mulsd xmm4, xmm11
unpcklpd xmm12, xmm0
movupd xmm0, xmm8
addsd xmm0, xmm7
movups xmmword [rax - 0x20], xmm12
movsd xmm12, qword [rsp + 0x38]
mulsd xmm12, xmm5
mulsd xmm0, xmm13
subsd xmm0, xmm9
movsd xmm9, qword [rsp + 0x20]
mulsd xmm9, xmm6
addsd xmm9, xmm12
movupd xmm12, xmm1
subsd xmm1, xmm7
addsd xmm12, xmm2
subsd xmm2, xmm6
mulsd xmm12, qword [rsp + 0x28]
mulsd xmm1, qword [0x140227950]
addsd xmm0, xmm9
movsd xmm9, qword [rsp + 0x30]
mulsd xmm2, qword [0x140227be8]
mulsd xmm9, xmm3
subsd xmm3, xmm8
mulsd xmm3, qword [0x140227be0]
addsd xmm2, xmm4
addsd xmm12, xmm9
addsd xmm1, xmm3
subsd xmm0, xmm12
addsd xmm1, xmm2
mulsd xmm0, xmm10
mulsd xmm1, xmm10
unpcklpd xmm0, xmm1
movups xmmword [rax - 0x10], xmm0
cmp rcx, rax
ja 0x140061663
movupd xmm1, xmmword [r14 + 0x18]
movupd xmm0, xmmword [r14 + 8]
add r14, 0x40
movupd xmm2, xmm1
shufpd xmm2, xmm0, 1
movlpd xmm0, qword [r14 - 0x18]
movups xmmword [r14 - 0x38], xmm2
movups xmmword [r14 - 0x28], xmm0
movupd xmm0, xmmword [r14 - 0x18]
shufpd xmm0, xmm1, 1
movups xmmword [r14 - 0x18], xmm0
cmp rcx, r14
jne 0x14006179c
jmp 0x140061502
cmp rcx, r14
jbe 0x140061d47
movsxd rdi, edi
mov r9, r14
not r9
lea r8, [rdi*8]
add r9, rcx
cmp r8, 0xfffffffffffffff8
je 0x140061d58
cmp r9, 0x7f
jbe 0x140061d58
mov r10, r9
add r8, r14
lea rdx, [r14 + 8]
and r9, 0xffffffffffffffe0
shr r10, 5
add r9, r8
nop dword [rax]
movupd xmm0, xmmword [r8]
movupd xmm1, xmmword [rdx - 8]
add r8, 0x20
add rdx, 0x20
movhpd xmm0, qword [r8 - 0x10]
movhpd xmm1, qword [rdx - 0x18]
subpd xmm0, xmm1
movlpd qword [rdx - 0x20], xmm0
movhpd qword [rdx - 0x10], xmm0
cmp r8, r9
jne 0x140061828
mov rdx, r10
shl rdx, 5
add rdx, r14
movsd xmm0, qword [rdx + rdi*8]
subsd xmm0, qword [rdx]
lea r8, [rdx + 0x10]
movsd qword [rdx + 8], xmm0
cmp rcx, r8
jbe 0x140061889
movsd xmm0, qword [r8 + rdi*8]
subsd xmm0, qword [rdx + 0x10]
movsd qword [rdx + 0x18], xmm0
sub rcx, r14
lea r8, [rcx - 0x20]
mov rcx, r8
shr rcx, 5
cmp rax, 0x20
je 0x1400618c5
lea rax, [r14 + 8]
xor edx, edx
nop dword [rax + rax]
movupd xmm0, xmmword [rax]
add rdx, 1
add rax, 0x20
shufpd xmm0, xmm0, 1
movups xmmword [rax - 0x20], xmm0
cmp rcx, rdx
ja 0x1400618a8
add r14, r8
movupd xmm0, xmmword [r14 + 8]
shufpd xmm0, xmm0, 1
movups xmmword [r14 + 8], xmm0
jmp 0x140061502
cvttsd2si rax, xmm0
pxor xmm8, xmm8
movsd xmm11, qword [0x1402278a0]
cvtsi2sd xmm8, rax
cmpnlesd xmm0, xmm8
andpd xmm0, xmm11
addsd xmm0, xmm8
cvttsd2si ebp, xmm0
jmp 0x140060ef2
xor eax, eax
movsxd rdx, eax
pxor xmm14, xmm14
add eax, 3
lea rdx, [rdx + rdx*2]
lea edi, [rax + rax]
cvtsi2sd xmm14, eax
shl rdx, 3
jmp 0x140060ec9
cmp rcx, r14
jbe 0x140061f42
movsxd r8, r8d
cdqe
movsxd r15, r15d
movsxd r11, r11d
lea rsi, [r8*8]
mov qword [rsp + 0x20], rax
movsxd r10, r10d
lea rbx, [r15*8]
mov qword [rsp + 0x40], rsi
lea rsi, [rax*8]
movsxd rax, edi
lea r13, [r11*8]
mov qword [rsp + 0x48], rbx
lea rbx, [rax*8]
lea r12, [r10*8]
movsxd r9, r9d
mov qword [rsp + 0x28], rax
mov rax, r14
lea rbp, [r9*8]
not rax
add rax, rcx
mov qword [rsp + 0x30], rax
mov rax, 0xfffffffffffffff8
mov rdx, rax
sub rdx, r13
cmp rdx, 0x10
mov rdx, rax
seta dil
sub rdx, qword [rsp + 0x40]
cmp rdx, 0x10
seta dl
and edx, edi
mov rdi, rax
sub rdi, rbx
cmp rdi, 0x10
seta dil
and edx, edi
mov rdi, rax
sub rdi, r12
cmp rdi, 0x10
seta dil
and edx, edi
mov rdi, rax
sub rdi, rbp
cmp rdi, 0x10
seta dil
and edx, edi
mov rdi, rax
sub rdi, qword [rsp + 0x48]
cmp rdi, 0x10
seta dil
sub rax, rsi
and edx, edi
cmp rax, 0x10
seta al
test dl, al
je 0x140061dab
mov rax, qword [rsp + 0x30]
cmp rax, 0x17
jbe 0x140061dab
mov rdi, qword [rsp + 0x48]
add r13, r14
add r12, r14
add rbp, r14
movabs rdx, 0xaaaaaaaaaaaaaaab
add rsi, r14
add rbx, r14
movupd xmm15, xmmword [0x140227b10]
movupd xmm14, xmmword [0x140227b20]
mul rdx
add rdi, r14
movupd xmm10, xmmword [0x140227b30]
movupd xmm9, xmmword [0x140227b40]
movupd xmm13, xmmword [0x140227b50]
movupd xmm12, xmmword [0x140227b60]
shr rdx, 4
lea rax, [rdx + 1]
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x30], rax
shr rax, 1
lea rax, [rax + rax*2]
add rdx, r14
shl rax, 4
mov qword [rsp + 0x38], rax
mov rcx, qword [rsp + 0x38]
xor eax, eax
movsd xmm2, qword [r12 + rax]
movsd xmm0, qword [rbp + rax]
movsd xmm7, qword [r13 + rax]
movsd xmm5, qword [r14 + rax]
movupd xmm6, xmm2
movsd xmm2, qword [rbx + rax]
movupd xmm8, xmm0
movsd xmm0, qword [rsi + rax]
movhpd xmm6, qword [r12 + rax + 0x18]
movhpd xmm8, qword [rbp + rax + 0x18]
movhpd xmm7, qword [r13 + rax + 0x18]
movsd xmm4, qword [rdi + rax + 0x18]
movhpd xmm2, qword [rbx + rax + 0x18]
movhpd xmm0, qword [rsi + rax + 0x18]
movsd xmm3, qword [rdi + rax]
movhpd xmm5, qword [r14 + rax + 0x18]
movupd xmm1, xmm2
addpd xmm2, xmm6
subpd xmm1, xmm6
mulpd xmm2, xmmword [0x140227b80]
unpcklpd xmm3, xmm4
mulpd xmm1, xmm15
movupd xmm11, xmm1
movupd xmm1, xmm8
subpd xmm1, xmm0
addpd xmm0, xmm8
movsd xmm8, qword [rdx + rax]
movhpd xmm8, qword [rdx + rax + 0x18]
mulpd xmm1, xmm14
mulpd xmm0, xmm13
mulpd xmm8, xmm10
addpd xmm1, xmm11
movupd xmm11, xmm7
subpd xmm11, xmm5
mulpd xmm7, xmmword [0x140227b70]
mulpd xmm5, xmm12
subpd xmm0, xmm8
mulpd xmm11, xmm10
addpd xmm5, xmm7
addpd xmm1, xmm11
addpd xmm0, xmm5
movupd xmm5, xmmword [0x140227b90]
mulpd xmm5, xmm3
mulpd xmm1, xmm9
addpd xmm2, xmm5
subpd xmm0, xmm2
movupd xmm2, xmm3
unpcklpd xmm2, xmm1
shufpd xmm1, xmm3, 1
movups xmmword [r14 + rax], xmm2
mulpd xmm0, xmm9
movupd xmm5, xmm0
movsd xmm0, xmm1
unpcklpd xmm5, xmm4
movups xmmword [r14 + rax + 0x20], xmm0
movups xmmword [r14 + rax + 0x10], xmm5
add rax, 0x30
cmp rcx, rax
jne 0x140061ab8
mov rsi, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x40]
mov rdx, rsi
and rdx, 0xfffffffffffffffe
lea rax, [rdx + rdx*2]
lea rax, [r14 + rax*8]
cmp rdx, rsi
je 0x140061cf7
mov rsi, qword [rsp + 0x20]
movsd xmm1, qword [rax + r9*8]
movsd xmm9, qword [rax + r8*8]
movsd xmm6, qword [rax + r10*8]
movsd xmm0, qword [rax + rsi*8]
mov rsi, qword [rsp + 0x28]
movupd xmm2, xmm1
movsd xmm10, qword [0x140227930]
movsd xmm8, qword [rax + r11*8]
movsd xmm4, qword [rax + rsi*8]
subsd xmm2, xmm0
addsd xmm1, xmm0
movsd xmm5, qword [rax]
movupd xmm0, xmm9
movsd xmm7, qword [rax + r15*8]
mulsd xmm0, xmm10
movupd xmm3, xmm4
addsd xmm4, xmm6
mulsd xmm1, qword [0x140227bb8]
subsd xmm3, xmm6
movsd qword [rax], xmm7
mulsd xmm3, qword [0x140227ba0]
mulsd xmm2, qword [0x140227ba8]
mulsd xmm7, qword [0x140227bd8]
mulsd xmm4, qword [0x140227bd0]
subsd xmm1, xmm0
movsd xmm0, qword [0x140227bc8]
addsd xmm2, xmm3
mulsd xmm0, xmm8
movupd xmm3, xmm8
subsd xmm3, xmm5
mulsd xmm5, qword [0x140227bc0]
mulsd xmm3, xmm10
addsd xmm0, xmm5
addsd xmm0, xmm1
movupd xmm1, xmm7
addsd xmm2, xmm3
movsd xmm3, qword [0x140227bb0]
addsd xmm1, xmm4
mulsd xmm2, xmm3
subsd xmm0, xmm1
mulsd xmm0, xmm3
movsd qword [rax + 8], xmm2
movsd qword [rax + 0x10], xmm0
movupd xmm1, xmmword [r14 + 8]
movupd xmm0, xmmword [r14 + 0x18]
add r14, 0x30
unpcklpd xmm0, xmm1
movlpd xmm1, qword [r14 - 0x10]
movups xmmword [r14 - 0x28], xmm0
movups xmmword [r14 - 0x18], xmm1
cmp rcx, r14
jne 0x140061cf7
jmp 0x140061502
xor eax, eax
movsxd rdx, eax
pxor xmm14, xmm14
add eax, 4
lea rdx, [rdx + rdx*2]
lea edi, [rax + rax]
cvtsi2sd xmm14, eax
shl rdx, 3
jmp 0x140060d9e
je 0x140061502
jmp 0x140061889
mov rdx, r14
movsd xmm0, qword [rdx + r8]
subsd xmm0, qword [rdx]
add rdx, 0x10
movsd qword [rdx - 8], xmm0
cmp rcx, rdx
ja 0x140061d5b
jmp 0x140061889
mov eax, 1
jmp 0x140061d27
mov eax, 1
jmp 0x14006190d
mov eax, 4
jmp 0x140061d27
mov eax, 2
jmp 0x140061d27
mov eax, 5
jmp 0x14006190d
mov eax, 6
jmp 0x14006190d
movsd xmm5, qword [0x140227bc0]
mov rdx, qword [rsp + 0x40]
mov rax, r14
movsd xmm15, qword [0x140227ba0]
mov r8, qword [rsp + 0x48]
movsd xmm14, qword [0x140227ba8]
movsd qword [rsp + 0x38], xmm5
movsd xmm5, qword [0x140227bc8]
movsd xmm11, qword [0x140227930]
movsd xmm10, qword [0x140227bb0]
movsd xmm13, qword [0x140227bb8]
movsd qword [rsp + 0x20], xmm5
movsd xmm5, qword [0x140227bd0]
movsd qword [rsp + 0x28], xmm5
movsd xmm5, qword [0x140227bd8]
movsd qword [rsp + 0x30], xmm5
movsd xmm7, qword [rax + rbp]
movsd xmm3, qword [rax + rbx]
add rax, 0x18
movsd xmm4, qword [rax + r12 - 0x18]
movsd xmm0, qword [rax + rsi - 0x18]
movupd xmm2, xmm3
movupd xmm1, xmm7
movsd xmm8, qword [rax + r13 - 0x18]
movsd xmm5, qword [rax - 0x18]
subsd xmm1, xmm0
subsd xmm2, xmm4
movsd xmm9, qword [rax + rdx - 0x18]
movsd xmm6, qword [rax + r8 - 0x18]
addsd xmm0, xmm7
addsd xmm3, xmm4
mulsd xmm3, qword [rsp + 0x28]
movsd qword [rax - 0x18], xmm6
mulsd xmm6, qword [rsp + 0x30]
mulsd xmm2, xmm15
mulsd xmm1, xmm14
mulsd xmm0, xmm13
addsd xmm1, xmm2
movupd xmm2, xmm8
subsd xmm2, xmm5
mulsd xmm8, qword [rsp + 0x20]
mulsd xmm5, qword [rsp + 0x38]
mulsd xmm2, xmm11
addsd xmm5, xmm8
addsd xmm1, xmm2
mulsd xmm1, xmm10
movsd qword [rax - 0x10], xmm1
movupd xmm1, xmm9
mulsd xmm1, xmm11
subsd xmm0, xmm1
movupd xmm1, xmm6
addsd xmm1, xmm3
addsd xmm0, xmm5
subsd xmm0, xmm1
mulsd xmm0, xmm10
movsd qword [rax - 8], xmm0
cmp rcx, rax
ja 0x140061e1d
jmp 0x140061cf7
mov eax, 3
jmp 0x14006190d
mov eax, 4
jmp 0x14006190d
mov eax, 2
jmp 0x14006190d
mov eax, 7
jmp 0x14006190d
mov eax, 5
jmp 0x140061d27
mov eax, 6
jmp 0x140061d27
mov eax, 7
jmp 0x140061d27
mov eax, 3
jmp 0x140061d27
je 0x140061502
jmp 0x140061cf7
mov eax, 0xa
jmp 0x140061d27
mov eax, 8
jmp 0x140061d27
mov eax, 9
jmp 0x140061d27
je 0x140061502
jmp 0x14006179c