Function at 0x1800988fc
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 0x18009896c
movaps xmm13, xmm0
movss xmm0, dword [0x1800bcb7c]
comiss xmm14, xmm0
jbe 0x18009897e
movaps xmm14, xmm0
xor r14d, r14d
mov ecx, r14d
cmp byte [rdx], r14b
je 0x180098992
inc rcx
cmp byte [rcx + rdx], r14b
jne 0x180098989
movabs rsi, 0xcbf29ce484222325
mov r8, r14
mov rdx, rsi
movabs r12, 0x100000001b3
test rcx, rcx
je 0x1800989c5
movsx rax, byte [r8 + rdi]
inc r8
imul rdx, r12
xor rdx, rax
cmp r8, rcx
jb 0x1800989b1
mov rax, qword [0x1800bcba0]
mov rcx, qword [0x1800bcba8]
movss xmm7, dword [rsp + 0x24]
movss xmm6, dword [rsp + 0x20]
movss xmm8, dword [0x1800b60dc]
movss xmm9, dword [0x1800b6808]
jmp 0x180098a00
mov rbx, qword [rax]
cmp qword [rbx + 0x38], rdx
je 0x180098a07
add rax, 8
cmp rax, rcx
jne 0x1800989f3
jmp 0x180098a10
test rbx, rbx
jne 0x180098b0c
mov ecx, 0x60
call fcn.180047368
mov rbx, rax
test rax, rax
je 0x180098a55
xor edx, edx
mov rcx, rax
lea r8d, [rdx + 0x60]
call fcn.180047e70
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 0x180098a58
mov rbx, r14
mov rcx, r14
mov qword [rbp + 0x6f], rbx
cmp byte [rdi], r14b
je 0x180098a6d
inc rcx
cmp byte [rcx + rdi], r14b
jne 0x180098a64
mov rdx, r14
test rcx, rcx
je 0x180098a89
movsx rax, byte [rdx + rdi]
inc rdx
imul rsi, r12
xor rsi, rax
cmp rdx, rcx
jb 0x180098a75
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 0x180098af8
mov qword [rdx], rbx
add qword [0x1800bcba8], 8
jmp 0x180098b0c
lea r8, [rbp + 0x6f]
lea rcx, [0x1800bcba0]
call fcn.18001ac7c
mov rbx, qword [rbp + 0x6f]
addss xmm6, dword [0x1800bcb70]
addss xmm7, dword [0x1800bcb74]
movaps xmm0, xmm6
unpcklps xmm0, xmm7
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
movss xmm0, dword [rbx + 4]
addss xmm0, dword [rbx + 0xc]
movss xmm1, dword [rbx + 0x1c]
comiss xmm1, xmm0
jbe 0x180098b9a
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 [0x1800b6870]
lea r8, [rsp + 0x30]
movss xmm3, dword [rbx]
movaps xmm1, xmm0
movss xmm12, dword [0x1800b4fe0]
movaps xmm6, xmm13
subss xmm6, dword [0x1800b56cc]
movss xmm2, dword [rbx + 4]
addss xmm3, xmm12
movss xmm10, dword [0x1800b56d4]
addss xmm2, xmm12
movaps xmmword [rsp + 0x30], xmm0
movaps xmmword [rbp - 0x79], xmm0
movaps xmm0, xmmword [0x1800b6860]
movaps xmm1, xmm0
movaps xmmword [rbp - 0x69], xmm0
movaps xmmword [rbp - 0x59], xmm0
movaps xmm1, xmm3
movaps xmm0, xmm6
unpcklps xmm1, xmm2
unpcklps xmm0, xmm10
movq rcx, xmm1
movq rdx, xmm0
call qword [0x1800bcb28]
movss xmm2, dword [rbx]
lea r8, [rsp + 0x20]
movaps xmm0, xmmword [0x1800b6950]
xor r9d, r9d
addss xmm2, dword [0x1800b5754]
movss xmm1, dword [rbx + 4]
mov rdx, rdi
addss xmm1, dword [0x1800b636c]
movq qword [rsp + 0x20], xmm0
psrldq xmm0, 8
movq qword [rsp + 0x28], xmm0
movaps xmm0, xmm2
unpcklps xmm0, xmm1
movq rcx, xmm0
call qword [0x1800bcb10]
movaps xmm0, xmmword [0x1800b6860]
lea r8, [rsp + 0x20]
movss xmm1, dword [rbx]
movaps xmm4, xmm14
movss xmm2, dword [rbx + 4]
addss xmm1, xmm12
subss xmm4, dword [0x1800b6384]
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 [0x1800b4ff4]
movaps xmm5, xmm13
movss xmm0, dword [0x1800bc350]
movss xmm8, dword [0x1800b50dc]
mulss xmm5, dword [0x1800b50e0]
mulss xmm0, xmm9
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 [0x1800b6890]
lea r8, [rsp + 0x30]
movss xmm2, dword [rbx + 4]
movaps xmm1, xmm0
and dword [rbp - 0x7d], r14d
addss xmm2, xmm10
and dword [rbp - 0x4d], r14d
movaps xmm1, xmm3
movaps xmmword [rbp - 0x79], xmm0
movaps xmmword [rbp - 0x69], xmm0
movaps xmm0, xmm5
unpcklps xmm0, xmm12
unpcklps xmm1, xmm2
movq rdx, xmm0
movq rcx, xmm1
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 [0x1800b6890]
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 [0x1800b6910]
lea r8, [rsp + 0x20]
movss xmm3, dword [0x1800b5658]
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 [0x1800b6384]
subss xmm1, xmm12
addss xmm0, dword [0x1800b67ec]
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