Function at 0x1400ffc00
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x10], edx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x10
xor ebp, ebp
movsxd r11, ecx
mov r13d, edx
mov eax, r11d
imul eax, edx
mov r10, r8
mov r12, r9
mov r8d, ebp
lea edx, [r11*2 - 1]
mov ecx, ebp
mov dword [rsp + 0x50], edx
mov r14d, ebp
mov rsi, r11
movsxd r15, eax
cmp r13d, 4
jl 0x1400ffd65
lea eax, [r13 - 4]
movsxd rdi, edx
shr eax, 2
lea rbx, [r11*4]
inc eax
mov rdx, r9
lea r9, [r9 + r15*4]
mov esi, eax
lea r14d, [rax*4]
nop word [rax + rax]
movsxd rax, ecx
add r8d, r11d
movss xmm0, dword [r10 + rax*4]
lea rcx, [rax + rdi]
addss xmm0, dword [r10 + rcx*4]
movss dword [rdx], xmm0
add rdx, rbx
movss xmm1, dword [r10 + rax*4]
lea eax, [r8 + r8]
subss xmm1, dword [r10 + rcx*4]
movsxd rcx, eax
add r8d, r11d
movss dword [r9], xmm1
lea rax, [rcx + rdi]
movss xmm0, dword [r10 + rcx*4]
add r9, rbx
addss xmm0, dword [r10 + rax*4]
movss dword [rdx], xmm0
add rdx, rbx
movss xmm1, dword [r10 + rcx*4]
subss xmm1, dword [r10 + rax*4]
lea eax, [r8 + r8]
add r8d, r11d
movsxd rcx, eax
movss dword [r9], xmm1
add r9, rbx
movss xmm0, dword [r10 + rcx*4]
lea rax, [rcx + rdi]
addss xmm0, dword [r10 + rax*4]
movss dword [rdx], xmm0
add rdx, rbx
movss xmm1, dword [r10 + rcx*4]
subss xmm1, dword [r10 + rax*4]
lea eax, [r8 + r8]
add r8d, r11d
movsxd rcx, eax
movss dword [r9], xmm1
add r9, rbx
movss xmm0, dword [r10 + rcx*4]
lea rax, [rcx + rdi]
addss xmm0, dword [r10 + rax*4]
movss dword [rdx], xmm0
add rdx, rbx
movss xmm1, dword [r10 + rcx*4]
lea ecx, [r8 + r8]
subss xmm1, dword [r10 + rax*4]
movss dword [r9], xmm1
add r9, rbx
sub rsi, 1
jne 0x1400ffc80
mov edx, dword [rsp + 0x50]
mov rsi, r11
cmp r14d, r13d
jge 0x1400ffdbb
movsxd rax, r8d
lea rdi, [rsi*4]
mov r9d, r13d
movsxd rbx, edx
sub r9d, r14d
lea rdx, [r12 + rax*4]
movsxd rax, ecx
add r8d, r11d
movss xmm0, dword [r10 + rax*4]
lea rcx, [rax + rbx]
addss xmm0, dword [r10 + rcx*4]
movss dword [rdx], xmm0
movss xmm1, dword [r10 + rax*4]
subss xmm1, dword [r10 + rcx*4]
lea ecx, [r8 + r8]
movss dword [rdx + r15*4], xmm1
add rdx, rdi
sub r9, 1
jne 0x1400ffd82
cmp r11d, 2
jl 0x140100087
je 0x1400fff1a
mov r14d, ebp
mov eax, ebp
test r13d, r13d
jle 0x1400fff00
mov rcx, r13
mov r13, qword [rsp + 0x68]
mov qword [rsp], rcx
nop word [rax + rax]
lea edx, [r11 + r11]
add edx, eax
cmp rsi, 2
jle 0x1400ffedc
mov r9, qword [rsp + 0x70]
mov rbx, r15
movsxd rcx, eax
mov rdi, r15
sub rbx, rcx
movsxd rax, edx
add rbx, rbp
lea rdx, [r10 - 4]
shl rbx, 2
add r9, 4
lea rdx, [rdx + rcx*4]
sub rbx, r10
lea r8, [r10 + rax*4]
neg rdi
mov rax, rbp
add rbx, r13
sub rax, rcx
lea rcx, [rsi - 3]
shr rcx, 1
lea r12, [rax*4 + 4]
sub r12, r10
add r12, r13
inc rcx
nop dword [rax]
nop word [rax + rax]
movss xmm0, dword [rdx + 8]
add rdx, 8
addss xmm0, dword [r8 - 0xc]
sub r8, 8
lea rax, [rbx + rdx]
movss dword [rax + rdi*4], xmm0
movss xmm0, dword [rdx + 4]
subss xmm0, dword [r8]
movss xmm3, dword [rdx]
subss xmm3, dword [r8 - 4]
movss dword [r12 + rdx], xmm0
movss xmm2, dword [rdx + 4]
addss xmm2, dword [r8]
movaps xmm1, xmm3
mulss xmm1, dword [r9 - 4]
movaps xmm0, xmm2
mulss xmm0, dword [r9]
subss xmm1, xmm0
movss dword [rax], xmm1
mulss xmm2, dword [r9 - 4]
mulss xmm3, dword [r9]
add r9, 8
addss xmm2, xmm3
movss dword [rbx + rdx + 4], xmm2
sub rcx, 1
jne 0x1400ffe60
mov rcx, qword [rsp]
add r14d, r11d
add rbp, rsi
sub rcx, 1
mov qword [rsp], rcx
lea eax, [r14 + r14]
jne 0x1400ffdf0
mov r13d, dword [rsp + 0x58]
xor ebp, ebp
mov r12, qword [rsp + 0x68]
mov eax, r11d
and eax, 0x80000001
jge 0x1400fff11
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x140100087
movss xmm2, dword [0x1402ce8a0]
lea r14d, [r11 - 1]
movsxd rax, r14d
mov dword [rsp + 0x58], eax
cmp r13d, 4
jl 0x140100035
lea rdx, [r10 + rax*4]
movsxd rcx, r14d
lea rbx, [rsi*8]
lea r9, [rsi*4]
lea rax, [rcx + r15]
lea r8, [r12 + rcx*4]
lea rcx, [r12 + rax*4]
lea eax, [r13 - 4]
shr eax, 2
inc eax
mov edi, eax
imul eax, r11d
lea ebp, [rdi*4]
lea r14d, [r14 + rax*4]
mov eax, edi
imul eax, r11d
mov r11d, dword [rsp + 0x58]
lea r11d, [r11 + rax*8]
nop dword [rax]
nop word [rax + rax]
movss xmm0, dword [rdx]
addss xmm0, xmm0
movss dword [r8], xmm0
add r8, r9
movss xmm1, dword [rdx + 4]
add rdx, rbx
addss xmm1, xmm1
xorps xmm1, xmm2
movss dword [rcx], xmm1
add rcx, r9
movss xmm0, dword [rdx]
addss xmm0, xmm0
movss dword [r8], xmm0
add r8, r9
movss xmm1, dword [rdx + 4]
add rdx, rbx
addss xmm1, xmm1
xorps xmm1, xmm2
movss dword [rcx], xmm1
add rcx, r9
movss xmm0, dword [rdx]
addss xmm0, xmm0
movss dword [r8], xmm0
add r8, r9
movss xmm1, dword [rdx + 4]
add rdx, rbx
addss xmm1, xmm1
xorps xmm1, xmm2
movss dword [rcx], xmm1
add rcx, r9
movss xmm0, dword [rdx]
addss xmm0, xmm0
movss dword [r8], xmm0
add r8, r9
movss xmm1, dword [rdx + 4]
add rdx, rbx
addss xmm1, xmm1
xorps xmm1, xmm2
movss dword [rcx], xmm1
add rcx, r9
sub rdi, 1
jne 0x1400fff90
mov eax, r11d
cmp ebp, r13d
jge 0x140100087
cdqe
lea r8, [rsi*8]
movsxd rcx, r14d
lea rsi, [rsi*4]
sub r13d, ebp
lea rdx, [r10 + rax*4]
lea rax, [r12 + rcx*4]
mov ecx, r13d
movss xmm0, dword [rdx]
addss xmm0, xmm0
movss dword [rax], xmm0
movss xmm1, dword [rdx + 4]
add rdx, r8
addss xmm1, xmm1
xorps xmm1, xmm2
movss dword [rax + r15*4], xmm1
add rax, rsi
sub rcx, 1
jne 0x14010005d
mov rbx, qword [rsp + 0x60]
add rsp, 0x10
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret