Function at 0x180098694
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 0x180098704
movaps xmm13, xmm0
movss xmm0, dword [0x1800bcb7c]
comiss xmm14, xmm0
jbe 0x180098716
movaps xmm14, xmm0
xor r14d, r14d
mov ecx, r14d
cmp byte [rdx], r14b
je 0x18009872a
inc rcx
cmp byte [rcx + rdx], r14b
jne 0x180098721
movabs rsi, 0xcbf29ce484222325
mov r8, r14
mov rdx, rsi
movabs r12, 0x100000001b3
test rcx, rcx
je 0x18009875d
movsx rax, byte [r8 + rdi]
inc r8
imul rdx, r12
xor rdx, rax
cmp r8, rcx
jb 0x180098749
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 0x180098798
mov rbx, qword [rax]
cmp qword [rbx + 0x38], rdx
je 0x18009879f
add rax, 8
cmp rax, rcx
jne 0x18009878b
jmp 0x1800987a8
test rbx, rbx
jne 0x1800988a4
mov ecx, 0x60
call fcn.1800476d4
mov rbx, rax
test rax, rax
je 0x1800987ed
xor edx, edx
mov rcx, rax
lea r8d, [rdx + 0x60]
call fcn.1800481dc
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 0x1800987f0
mov rbx, r14
mov rcx, r14
mov qword [rbp + 0x6f], rbx
cmp byte [rdi], r14b
je 0x180098805
inc rcx
cmp byte [rcx + rdi], r14b
jne 0x1800987fc
mov rdx, r14
test rcx, rcx
je 0x180098821
movsx rax, byte [rdx + rdi]
inc rdx
imul rsi, r12
xor rsi, rax
cmp rdx, rcx
jb 0x18009880d
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 0x180098890
mov qword [rdx], rbx
add qword [0x1800bcba8], 8
jmp 0x1800988a4
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 0x18009892f
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 xmm3, dword [rbx + 4]
and dword [rbp - 0x6d], r14d
addss xmm3, 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 xmm2, eax
cvtdq2ps xmm2, xmm2
cvttss2si eax, xmm0
movaps xmm0, xmmword [0x1800b6980]
mulss xmm2, xmm8
mulss xmm4, xmm8
movss dword [rbp - 0x75], xmm2
movss dword [rbp - 0x65], xmm2
movss xmm2, dword [rbx]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
unpcklps xmm2, xmm3
mulss xmm1, xmm8
movq rcx, xmm2
movss dword [rbp - 0x79], xmm4
movss dword [rbp - 0x69], xmm4
movss dword [rbp - 0x71], xmm1
movss dword [rbp - 0x61], xmm1
movaps xmm1, xmm13
unpcklps xmm1, xmm12
movq rdx, xmm1
movaps xmmword [rsp + 0x30], xmm0
movaps xmmword [rbp - 0x59], xmm0
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