Function at 0x1801f5220
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
sub rsp, 0xa8
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
movaps xmmword [rax - 0x38], xmm8
movaps xmmword [rax - 0x58], xmm10
movaps xmmword [rax - 0x78], xmm12
movaps xmmword [rsp + 0x20], xmm13
movaps xmmword [rsp + 0x10], xmm15
mov rax, qword [0x1804e1080]
xor rax, rsp
mov qword [rsp + 8], rax
movups xmm8, xmmword [rcx]
xorps xmm1, xmm1
movups xmm12, xmmword [rcx + 0x10]
movaps xmm5, xmm8
movups xmm13, xmmword [rcx + 0x30]
movaps xmm6, xmm12
mov r10d, dword [rcx + 0x60]
movaps xmm7, xmm13
movups xmm15, xmmword [rcx + 0x20]
xorps xmm10, xmm10
movss xmm4, dword [rcx + 0x38]
movhlps xmm5, xmm8
movhlps xmm6, xmm12
cmpeqps xmm1, xmm5
movaps xmm0, xmm1
andnps xmm1, xmm5
andps xmm0, xmmword [0x18030a340]
orps xmm0, xmm1
divps xmm7, xmm0
test r10b, 4
je 0x1801f52b9
mulps xmm8, xmm3
mulps xmm5, xmm3
jmp 0x1801f52bc
mulps xmm7, xmm3
test r10b, 8
jne 0x1801f52c5
mulps xmm6, xmm2
xorps xmm1, xmm1
ucomiss xmm4, xmm1
je 0x1801f540f
comiss xmm4, xmm1
movaps xmmword [rsp + 0x60], xmm9
movaps xmm0, xmm4
mulss xmm0, dword [0x180363c58]
movss xmm9, dword [0x18033331c]
movaps xmmword [rsp + 0x40], xmm11
jb 0x1801f52fd
addss xmm0, xmm9
jmp 0x1801f5302
subss xmm0, xmm9
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x18033e064]
subss xmm4, xmm0
comiss xmm4, dword [0x18035f58c]
jbe 0x1801f532c
movss xmm0, dword [0x18035b6b0]
jmp 0x1801f533d
comiss xmm4, dword [0x180363c5c]
jae 0x1801f534f
movss xmm0, dword [0x180363c60]
movss xmm11, dword [0x180333344]
subss xmm0, xmm4
movaps xmm4, xmm0
jmp 0x1801f5358
movss xmm11, dword [0x180333320]
movss xmm3, dword [0x180363c40]
movaps xmm1, xmm4
movss xmm2, dword [0x180363c44]
mulss xmm1, xmm4
movaps xmm0, xmm1
mulss xmm0, dword [0x180363c38]
subss xmm3, xmm0
movaps xmm0, xmm1
mulss xmm0, dword [0x180363c3c]
subss xmm2, xmm0
mulss xmm3, xmm1
subss xmm3, dword [0x180363c48]
mulss xmm2, xmm1
subss xmm2, dword [0x180363c4c]
mulss xmm3, xmm1
addss xmm3, dword [0x180363c50]
mulss xmm2, xmm1
addss xmm2, dword [0x180363c54]
mulss xmm3, xmm1
subss xmm3, dword [0x18035b370]
mulss xmm2, xmm1
subss xmm2, xmm9
mulss xmm3, xmm1
movaps xmm9, xmmword [rsp + 0x60]
addss xmm3, dword [0x180333320]
mulss xmm2, xmm1
addss xmm2, dword [0x180333320]
mulss xmm3, xmm4
mulss xmm2, xmm11
subps xmm10, xmm3
movaps xmm11, xmmword [rsp + 0x40]
movaps xmm0, xmm2
unpcklps xmm2, xmm3
unpcklps xmm10, xmm0
jmp 0x1801f541e
movaps xmm2, xmmword [0x18030a140]
movaps xmm10, xmmword [0x18030a150]
and r10d, 3
lea r11, [0x1804dcd90]
xor r8d, r8d
mov r9, r11
add rdx, 0x1c
nop dword [rax]
nop word [rax + rax]
movups xmm1, xmmword [r9]
add r9, 0x10
subps xmm1, xmm7
mov eax, r8d
mov ecx, r10d
inc r8
xor rcx, rax
add rcx, rcx
mulps xmm1, xmm6
movaps xmm0, xmm1
shufps xmm0, xmm1, 0
mulps xmm0, xmm2
shufps xmm1, xmm1, 0x55
mulps xmm1, xmm10
addps xmm0, xmm12
addps xmm0, xmm1
shufps xmm0, xmm13, 0xb4
movups xmmword [rdx - 0x1c], xmm0
movups xmmword [rdx - 0x10], xmm15
movaps xmm0, xmm5
mulps xmm0, xmmword [r11 + rcx*8]
addps xmm0, xmm8
movsd qword [rdx], xmm0
add rdx, 0x24
cmp r8, 4
jb 0x1801f5440
mov rcx, qword [rsp + 8]
xor rcx, rsp
call fcn.18027f9e0
lea r11, [rsp + 0xa8]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm12, xmmword [r11 - 0x78]
movaps xmm13, xmmword [rsp + 0x20]
movaps xmm15, xmmword [rsp + 0x10]
mov rsp, r11
ret