Function at 0x180093910
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push r14
push r15
sub rsp, 0x30
mov rbx, qword [rsp + 0x70]
mov r15, r8
mov r11, qword [rsp + 0x78]
mov r10, rcx
movaps xmmword [rsp + 0x20], xmm6
movsxd rbp, r9d
mov eax, ebp
movaps xmmword [rsp + 0x10], xmm7
movaps xmmword [rsp], xmm8
and eax, 0x80000003
jge 0x180093950
dec eax
or eax, 0xfffffffc
inc eax
movss xmm0, dword [rcx]
mov r14d, ebp
movaps xmm7, xmmword [0x1800ecbf0]
movaps xmm5, xmm0
xorps xmm0, xmmword [0x1800ecd00]
sub r14d, eax
movaps xmm8, xmmword [0x1800ecd10]
movaps xmm6, xmm0
shufps xmm6, xmm6, 0
mov rcx, rbp
mov qword [rsp + 0x58], rdi
shufps xmm5, xmm5, 0
test r9d, r9d
jle 0x180093a00
mov qword [rsp + 0x50], rsi
mov r9, r15
sub r9, rdx
mov rsi, rbx
sub rsi, rdx
mov rdi, r11
sub rdi, rdx
mov r8, rdx
dec rcx
shr rcx, 2
inc rcx
nop
movups xmm4, xmmword [r9 + r8]
movaps xmm3, xmm8
movaps xmm2, xmm4
mulps xmm2, xmm5
addps xmm2, xmmword [r8]
cmpltps xmm3, xmm2
movaps xmm0, xmm2
movaps xmm1, xmm2
xorps xmm1, xmmword [0x1800e74a0]
cmpltps xmm0, xmm7
andps xmm3, xmm0
andps xmm3, xmm1
xorps xmm3, xmm2
movups xmmword [rdi + r8], xmm3
mulps xmm3, xmm6
addps xmm3, xmm4
movups xmmword [rsi + r8], xmm3
add r8, 0x10
sub rcx, 1
jne 0x1800939b0
mov rsi, qword [rsp + 0x50]
movaps xmm8, xmmword [rsp]
movaps xmm7, xmmword [rsp + 0x10]
movaps xmm6, xmmword [rsp + 0x20]
cmp r14d, ebp
jge 0x180093baa
movss xmm3, dword [0x1800ecb80]
mov r8, rdx
movss xmm2, dword [0x1800eca14]
sub r8, r11
sub r11, r15
movsxd rdi, r14d
sub rbx, r15
cmp eax, 4
jl 0x180093b61
mov eax, ebp
lea rcx, [r15 + 4]
sub eax, r14d
lea rcx, [rcx + rdi*4]
sub eax, 4
sub rdx, r15
shr eax, 2
inc eax
mov r9d, eax
lea r14d, [r14 + rax*4]
lea rdi, [rdi + rax*4]
nop dword [rax]
nop word [rax + rax]
movss xmm1, dword [rcx - 4]
mulss xmm1, dword [r10]
addss xmm1, dword [rdx + rcx - 4]
comiss xmm1, xmm3
jbe 0x180093a8d
comiss xmm1, xmm2
jae 0x180093a8d
xorps xmm1, xmm1
movss dword [r11 + rcx - 4], xmm1
lea rax, [r11 + rcx]
mulss xmm1, dword [r10]
movss xmm0, dword [rcx - 4]
subss xmm0, xmm1
movss dword [rbx + rcx - 4], xmm0
movss xmm1, dword [rcx]
mulss xmm1, dword [r10]
addss xmm1, dword [rax + r8]
comiss xmm1, xmm3
jbe 0x180093ac8
comiss xmm1, xmm2
jae 0x180093ac8
xorps xmm1, xmm1
movss dword [rax], xmm1
mulss xmm1, dword [r10]
movss xmm0, dword [rcx]
subss xmm0, xmm1
movss dword [rbx + rcx], xmm0
movss xmm1, dword [rcx + 4]
mulss xmm1, dword [r10]
addss xmm1, dword [rdx + rcx + 4]
comiss xmm1, xmm3
jbe 0x180093afb
comiss xmm1, xmm2
jae 0x180093afb
xorps xmm1, xmm1
movss dword [r11 + rcx + 4], xmm1
mulss xmm1, dword [r10]
movss xmm0, dword [rcx + 4]
subss xmm0, xmm1
movss dword [rbx + rcx + 4], xmm0
movss xmm1, dword [rcx + 8]
mulss xmm1, dword [r10]
addss xmm1, dword [rdx + rcx + 8]
comiss xmm1, xmm3
jbe 0x180093b33
comiss xmm1, xmm2
jae 0x180093b33
xorps xmm1, xmm1
movss dword [r11 + rcx + 8], xmm1
movss xmm0, dword [rcx + 8]
mulss xmm1, dword [r10]
subss xmm0, xmm1
movss dword [rbx + rcx + 8], xmm0
add rcx, 0x10
sub r9, 1
jne 0x180093a70
cmp r14d, ebp
jge 0x180093baa
sub ebp, r14d
lea rax, [r15 + rdi*4]
mov edx, ebp
movss xmm1, dword [r10]
lea rcx, [r11 + rax]
mulss xmm1, dword [rax]
addss xmm1, dword [r8 + rcx]
comiss xmm1, xmm3
jbe 0x180093b8a
comiss xmm1, xmm2
jae 0x180093b8a
xorps xmm1, xmm1
movss dword [rcx], xmm1
movss xmm0, dword [rax]
mulss xmm1, dword [r10]
subss xmm0, xmm1
movss dword [rbx + rax], xmm0
add rax, 4
sub rdx, 1
jne 0x180093b6a
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
add rsp, 0x30
pop r15
pop r14
pop rbp
ret