Function at 0x140061154
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov dword [rax + 0x10], edx
mov dword [rax + 8], ecx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb8
movaps xmmword [rax - 0x58], xmm6
movsxd r10, ecx
movaps xmmword [rax - 0x68], xmm7
mov r13d, r10d
mov rbx, r10
mov r15, r9
shl r13d, 2
mov edi, edx
lea r14d, [r10 + r10]
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rsp + 0x70], xmm9
mov eax, r10d
mov qword [rsp + 0x60], rbx
imul eax, edx
movsxd r11, eax
test edx, edx
jle 0x140061257
movsxd rcx, r14d
mov rdx, rbx
movsxd rax, r13d
shl rdx, 2
shl rax, 2
mov rsi, r11
mov qword [rsp + 8], rdx
mov rdx, rcx
lea rcx, [r8 - 4]
shl rdx, 2
mov qword [rsp], rax
lea rax, [r9 + r11*8]
mov r9d, 4
mov rbp, r11
neg rsi
add rcx, rdx
sub r9, rdx
mov r12d, edi
neg rbp
movss xmm2, dword [r9 + rcx]
movss xmm5, dword [rcx]
movss xmm4, dword [rcx + 4]
movaps xmm3, xmm2
addss xmm2, dword [rdx + rcx]
subss xmm3, dword [rdx + rcx]
addss xmm5, xmm5
add rcx, qword [rsp]
movaps xmm0, xmm2
movaps xmm1, xmm3
addss xmm4, xmm4
addss xmm0, xmm5
subss xmm2, xmm5
movss dword [rax + rbp*8], xmm0
subss xmm1, xmm4
addss xmm3, xmm4
movss dword [rax + rsi*4], xmm1
movss dword [rax], xmm2
movss dword [rax + r11*4], xmm3
add rax, qword [rsp + 8]
dec r12
jne 0x1400611fb
cmp r10d, 2
jl 0x1400615ec
je 0x140061533
xor esi, esi
mov dword [rsp], esi
test edi, edi
jle 0x140061519
mov r13, qword [rsp + 0x120]
xor r9d, r9d
mov rbp, rdi
mov qword [rsp + 8], rdi
mov r12d, esi
shl r12d, 2
lea eax, [r14 + r12]
lea edx, [r14 + rax]
cmp rbx, 2
jle 0x1400614f4
movsxd rcx, eax
movsxd rdx, edx
lea rax, [r13 + 4]
mov qword [rsp + 0x18], rax
lea rax, [r8 + rcx*4]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], rax
lea rax, [r8 + rdx*4]
lea rcx, [r11 + r11]
mov rbp, qword [rsp + 0x40]
mov qword [rsp + 0x30], rax
lea rax, [rcx - 1]
add rax, r9
mov r10, r11
lea rax, [r15 + rax*4]
shl r10, 2
mov qword [rsp + 0x20], rax
mov rax, r11
neg rax
mov qword [rsp + 0x58], rax
movsxd rax, r12d
mov r12, qword [rsp + 0x130]
mov r14, qword [rsp + 0x58]
sub rax, rcx
mov ecx, 4
sub rax, r9
sub r12, r13
shl rax, 2
sub rax, r15
mov r15, qword [rsp + 0x18]
add rax, r8
mov r8, qword [rsp + 0x20]
mov qword [rsp + 0x50], rax
mov rax, r11
mov rsi, qword [rsp + 0x50]
neg rax
mov qword [rsp + 0x28], rax
mov eax, ecx
sub rax, r10
mov qword [rsp + 0x48], rax
mov rax, r11
mov rdi, qword [rsp + 0x48]
shl rax, 3
sub rcx, rax
lea rax, [rbx - 3]
mov rbx, qword [rsp + 0x30]
mov qword [rsp + 0x10], rcx
mov rcx, qword [rsp + 0x38]
shr rax, 1
mov r10, qword [rsp + 0x10]
sub rcx, rdx
mov rdx, qword [rsp + 0x128]
sub rdx, r13
mov r13, qword [rsp + 0x28]
inc rax
movss xmm1, dword [rbx + rcx*4 - 0xc]
movss xmm8, dword [rsi + r8 + 0xc]
movss xmm4, dword [rbp + 4]
add r8, 8
sub rbx, 8
add rbp, 8
movss xmm6, dword [rsi + r8]
movss xmm2, dword [rbp]
movss xmm5, dword [rbx + rcx*4]
movaps xmm7, xmm6
addss xmm6, dword [rbx - 4]
subss xmm7, dword [rbx - 4]
movss xmm9, dword [rbx]
movaps xmm0, xmm6
movaps xmm3, xmm7
subss xmm4, xmm1
addss xmm1, dword [rbp - 4]
addss xmm9, xmm8
subss xmm8, dword [rbx]
addss xmm0, xmm1
subss xmm6, xmm1
subss xmm2, xmm5
addss xmm5, dword [rbp]
movss dword [r8 + r13*8], xmm0
movaps xmm0, xmm2
addss xmm0, xmm8
subss xmm8, xmm2
subss xmm3, xmm5
movaps xmm2, xmm4
movaps xmm1, xmm3
movss dword [r10 + r8], xmm0
addss xmm2, xmm9
subss xmm9, xmm4
mulss xmm1, dword [r15 - 4]
movaps xmm0, xmm2
mulss xmm0, dword [r15]
addss xmm7, xmm5
subss xmm1, xmm0
movaps xmm0, xmm8
movss dword [r8 + r14*4], xmm1
mulss xmm3, dword [r15]
mulss xmm2, dword [r15 - 4]
movaps xmm1, xmm6
addss xmm3, xmm2
movss dword [rdi + r8], xmm3
mulss xmm1, dword [rdx + r15 - 4]
mulss xmm0, dword [rdx + r15]
subss xmm1, xmm0
movaps xmm0, xmm9
movss dword [r8], xmm1
mulss xmm8, dword [rdx + r15 - 4]
mulss xmm6, dword [rdx + r15]
movaps xmm1, xmm7
addss xmm8, xmm6
movss dword [r8 + 4], xmm8
mulss xmm1, dword [r12 + r15 - 4]
mulss xmm0, dword [r12 + r15]
subss xmm1, xmm0
movss dword [r8 + r11*4], xmm1
mulss xmm9, dword [r12 + r15 - 4]
mulss xmm7, dword [r12 + r15]
add r15, 8
addss xmm9, xmm7
movss dword [r8 + r11*4 + 4], xmm9
dec rax
jne 0x140061382
mov r10d, dword [rsp + 0x100]
mov rbx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x110]
mov esi, dword [rsp]
mov r15, qword [rsp + 0x118]
mov rbp, qword [rsp + 8]
mov r13, qword [rsp + 0x120]
lea r14d, [r10 + r10]
add esi, r10d
add r9, rbx
dec rbp
mov qword [rsp + 8], rbp
mov dword [rsp], esi
jne 0x140061287
mov edi, dword [rsp + 0x108]
mov r13d, r10d
shl r13d, 2
mov eax, r10d
and eax, 0x80000001
jge 0x14006152a
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x1400615ec
lea ecx, [r10 - 1]
lea eax, [r10 + r10*2]
test edi, edi
jle 0x1400615ec
movss xmm4, dword [0x1404100fc]
movsxd rdx, eax
movsxd rcx, ecx
lea rax, [rcx + r11*2]
lea r8, [r8 + rdx*4]
mov r9, rbx
lea rcx, [r15 + rax*4]
mov rax, r11
movsxd r10, r13d
mov rsi, r11
shl r9, 2
add r8, 0xfffffffffffffffc
neg rax
shl r10, 2
neg r11
sub rbx, rdx
mov edx, edi
movss xmm0, dword [r8 + rbx*4]
movss xmm2, dword [r8 + 4]
movss xmm3, dword [r8 + rbx*4 + 4]
movaps xmm1, xmm0
addss xmm0, dword [r8]
subss xmm1, dword [r8]
addss xmm3, xmm2
subss xmm2, dword [r8 + rbx*4 + 4]
addss xmm0, xmm0
add r8, r10
movss dword [rcx + r11*8], xmm0
addss xmm2, xmm2
movaps xmm0, xmm1
subss xmm0, xmm3
addss xmm3, xmm1
mulss xmm3, xmm4
mulss xmm0, xmm4
movss dword [rcx + rax*4], xmm0
movss dword [rcx], xmm2
xorps xmm3, xmmword [0x140161cf0]
movss dword [rcx + rsi*4], xmm3
add rcx, r9
dec rdx
jne 0x140061580
lea r11, [rsp + 0xb8]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret