Function at 0x1800987bc
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
push rbp
push rsi
push rdi
push r12
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0xf0
movss xmm0, dword [0x1800bcb78]
mov rdi, rdx
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm12
movaps xmmword [rax - 0x98], xmm13
mov qword [rbp + 0x6f], r9
movss xmm13, dword [rbp + 0x6f]
comiss xmm13, xmm0
mov qword [rsp + 0x20], r8
movaps xmmword [rsp + 0x70], xmm14
movss xmm14, dword [rbp + 0x73]
jbe 0x18009882c
movaps xmm13, xmm0
movss xmm0, dword [0x1800bcb7c]
comiss xmm14, xmm0
jbe 0x18009883e
movaps xmm14, xmm0
xor r14d, r14d
mov ecx, r14d
cmp byte [rdx], r14b
je 0x180098852
inc rcx
cmp byte [rcx + rdx], r14b
jne 0x180098849
movabs rsi, 0xcbf29ce484222325
mov r8, r14
mov rdx, rsi
movabs r12, 0x100000001b3
test rcx, rcx
je 0x180098885
movsx rax, byte [r8 + rdi]
inc r8
imul rdx, r12
xor rdx, rax
cmp r8, rcx
jb 0x180098871
mov rax, qword [0x1800bcba0]
mov rcx, qword [0x1800bcba8]
movss xmm7, dword [rsp + 0x24]
movss xmm6, dword [rsp + 0x20]
movss xmm8, dword [0x1800b60cc]
movss xmm9, dword [0x1800b68e8]
jmp 0x1800988c0
mov rbx, qword [rax]
cmp qword [rbx + 0x38], rdx
je 0x1800988c7
add rax, 8
cmp rax, rcx
jne 0x1800988b3
jmp 0x1800988d0
test rbx, rbx
jne 0x1800989cc
mov ecx, 0x60
call fcn.180047798
mov rbx, rax
test rax, rax
je 0x180098915
xor edx, edx
mov rcx, rax
lea r8d, [rdx + 0x60]
call fcn.1800482a0
mov qword [rbx], r14
mov qword [rbx + 8], r14
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], r14
mov qword [rbx + 0x20], r14
mov dword [rbx + 0x28], r14d
mov qword [rbx + 0x48], r14
mov qword [rbx + 0x50], r14
mov qword [rbx + 0x58], r14
jmp 0x180098918
mov rbx, r14
mov rcx, r14
mov qword [rbp + 0x6f], rbx
cmp byte [rdi], r14b
je 0x18009892d
inc rcx
cmp byte [rcx + rdi], r14b
jne 0x180098924
mov rdx, r14
test rcx, rcx
je 0x180098949
movsx rax, byte [rdx + rdi]
inc rdx
imul rsi, r12
xor rsi, rax
cmp rdx, rcx
jb 0x180098935
mov qword [rbx + 0x38], rsi
movaps xmm0, xmm6
mov dword [rbx + 0x20], r14d
movaps xmm1, xmm7
mov qword [rbx + 0x30], rdi
addss xmm0, dword [0x1800bcb70]
addss xmm1, dword [0x1800bcb74]
unpcklps xmm0, xmm1
movsd qword [rbx], xmm0
movss dword [rbx + 8], xmm13
movss dword [rbx + 0xc], xmm14
movss xmm1, dword [rbx]
movss xmm0, dword [rbx + 4]
addss xmm1, xmm8
addss xmm0, xmm9
movss dword [rbx + 0x10], xmm1
movss dword [rbx + 0x14], xmm0
mov rdx, qword [0x1800bcba8]
cmp rdx, qword [0x1800bcbb0]
je 0x1800989b8
mov qword [rdx], rbx
add qword [0x1800bcba8], 8
jmp 0x1800989cc
lea r8, [rbp + 0x6f]
lea rcx, [0x1800bcba0]
call fcn.18001ac68
mov rbx, qword [rbp + 0x6f]
addss xmm6, dword [0x1800bcb70]
addss xmm7, dword [0x1800bcb74]
unpcklps xmm6, xmm7
movsd qword [rbx], xmm6
movss dword [rbx + 8], xmm13
movss dword [rbx + 0xc], xmm14
movss xmm1, dword [rbx]
movss xmm0, dword [rbx + 4]
addss xmm1, xmm8
addss xmm0, xmm9
movss dword [rbx + 0x10], xmm1
movss dword [rbx + 0x14], xmm0
movss xmm0, dword [rbx + 4]
addss xmm0, dword [rbx + 0xc]
movss xmm1, dword [rbx + 0x1c]
comiss xmm1, xmm0
jbe 0x180098a57
cvttss2si eax, dword [rbx + 4]
movss xmm2, dword [rbx + 0x14]
cvttss2si ecx, xmm1
sub ecx, eax
cvttss2si eax, dword [rbx + 0xc]
sub ecx, eax
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [rbx + 0x20]
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm2, xmm1
movss dword [rbx + 0x14], xmm2
movaps xmm0, xmmword [0x1800b6960]
lea r8, [rsp + 0x30]
movss xmm3, dword [rbx]
movaps xmm1, xmm0
movss xmm12, dword [0x1800b50d4]
movaps xmm6, xmm13
subss xmm6, dword [0x1800b56bc]
movss xmm2, dword [rbx + 4]
addss xmm3, xmm12
movss xmm10, dword [0x1800b56c4]
addss xmm2, xmm12
movaps xmmword [rsp + 0x30], xmm0
movaps xmmword [rbp - 0x79], xmm0
movaps xmm0, xmmword [0x1800b6950]
movaps xmmword [rbp - 0x69], xmm0
movaps xmm1, xmm0
movaps xmmword [rbp - 0x59], xmm0
movaps xmm0, xmm6
unpcklps xmm0, xmm10
unpcklps xmm3, xmm2
movq rdx, xmm0
movq rcx, xmm3
call qword [0x1800bcb28]
movss xmm2, dword [rbx]
lea r8, [rsp + 0x20]
addss xmm2, dword [0x1800b5744]
movaps xmm0, xmmword [0x1800b6a40]
xor r9d, r9d
movss xmm1, dword [rbx + 4]
mov rdx, rdi
addss xmm1, dword [0x1800b635c]
movq qword [rsp + 0x20], xmm0
psrldq xmm0, 8
movq qword [rsp + 0x28], xmm0
unpcklps xmm2, xmm1
movq rcx, xmm2
call qword [0x1800bcb10]
movaps xmm0, xmmword [0x1800b6950]
lea r8, [rsp + 0x20]
movss xmm1, dword [rbx]
movaps xmm4, xmm14
movss xmm2, dword [rbx + 4]
addss xmm1, xmm12
subss xmm4, dword [0x1800b6374]
movq qword [rsp + 0x20], xmm0
addss xmm2, xmm10
psrldq xmm0, 8
xorps xmm3, xmm3
movq qword [rsp + 0x28], xmm0
movaps xmm0, xmm6
unpcklps xmm0, xmm4
unpcklps xmm1, xmm2
movq rdx, xmm0
movq rcx, xmm1
call qword [0x1800bcb08]
movss xmm9, dword [0x1800b4fec]
movaps xmm5, xmm13
movss xmm0, dword [0x1800bc350]
movss xmm8, dword [0x1800b50cc]
mulss xmm5, dword [0x1800b50d0]
movss xmm2, dword [rbx + 4]
mulss xmm0, xmm9
addss xmm2, xmm10
movaps xmm3, xmm5
addss xmm3, dword [rbx]
cvttss2si eax, xmm0
movss xmm0, dword [0x1800bc354]
mulss xmm0, xmm9
movd xmm7, eax
cvttss2si eax, xmm0
movss xmm0, dword [0x1800bc358]
mulss xmm0, xmm9
cvtdq2ps xmm7, xmm7
movd xmm6, eax
cvttss2si eax, xmm0
cvtdq2ps xmm6, xmm6
movd xmm4, eax
cvtdq2ps xmm4, xmm4
mulss xmm7, xmm8
mulss xmm4, xmm8
mulss xmm6, xmm8
movaps xmm0, xmmword [0x1800b6980]
lea r8, [rsp + 0x30]
and dword [rbp - 0x7d], r14d
movaps xmm1, xmm0
and dword [rbp - 0x4d], r14d
movaps xmmword [rbp - 0x79], xmm0
movaps xmmword [rbp - 0x69], xmm0
movaps xmm0, xmm5
unpcklps xmm0, xmm12
unpcklps xmm3, xmm2
movq rdx, xmm0
movq rcx, xmm3
movss dword [rsp + 0x30], xmm7
movss dword [rsp + 0x34], xmm6
movss dword [rsp + 0x38], xmm4
movss dword [rbp - 0x59], xmm7
movss dword [rbp - 0x55], xmm6
movss dword [rbp - 0x51], xmm4
call qword [0x1800bcb28]
movss xmm0, dword [0x1800bc350]
lea r8, [rsp + 0x30]
movss xmm2, dword [rbx + 4]
and dword [rbp - 0x6d], r14d
addss xmm2, xmm10
and dword [rbp - 0x5d], r14d
mulss xmm0, xmm9
cvttss2si eax, xmm0
movss xmm0, dword [0x1800bc354]
mulss xmm0, xmm9
movd xmm4, eax
cvttss2si eax, xmm0
movss xmm0, dword [0x1800bc358]
mulss xmm0, xmm9
cvtdq2ps xmm4, xmm4
movd xmm3, eax
cvttss2si eax, xmm0
movaps xmm0, xmmword [0x1800b6980]
movaps xmmword [rsp + 0x30], xmm0
movaps xmmword [rbp - 0x59], xmm0
movss xmm0, dword [rbx]
mulss xmm4, xmm8
movd xmm1, eax
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm3, xmm3
mulss xmm1, xmm8
mulss xmm3, xmm8
movss dword [rbp - 0x71], xmm1
movss dword [rbp - 0x61], xmm1
movaps xmm1, xmm13
unpcklps xmm1, xmm12
unpcklps xmm0, xmm2
movq rdx, xmm1
movq rcx, xmm0
movss dword [rbp - 0x79], xmm4
movss dword [rbp - 0x75], xmm3
movss dword [rbp - 0x69], xmm4
movss dword [rbp - 0x65], xmm3
call qword [0x1800bcb28]
movaps xmm0, xmmword [0x1800b6a00]
lea r8, [rsp + 0x20]
movss xmm3, dword [0x1800b5648]
mov rcx, qword [rbx]
movq qword [rsp + 0x20], xmm0
psrldq xmm0, 8
movq qword [rsp + 0x28], xmm0
movaps xmm0, xmm13
unpcklps xmm0, xmm14
movq rdx, xmm0
call qword [0x1800bcb00]
movss xmm2, dword [rbx + 4]
mov r8b, 1
movss xmm0, dword [rbx]
movaps xmm1, xmm2
addss xmm1, dword [rbx + 0xc]
addss xmm0, dword [rbx + 8]
addss xmm2, dword [0x1800b6374]
subss xmm1, xmm12
addss xmm0, dword [0x1800b68cc]
unpcklps xmm0, xmm1
movss xmm1, dword [rbx]
movq rdx, xmm0
unpcklps xmm1, xmm2
movq rcx, xmm1
call qword [0x1800bcb30]
lea r11, [rsp + 0xf0]
mov qword [0x1800bcb98], rbx
movaps xmm6, xmmword [r11 - 0x10]
mov rax, rbx
mov rbx, qword [r11 + 0x30]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm12, xmmword [r11 - 0x60]
movaps xmm13, xmmword [r11 - 0x70]
movaps xmm14, xmmword [r11 - 0x80]
mov rsp, r11
pop r14
pop r12
pop rdi
pop rsi
pop rbp
ret