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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x20], rdi
mov qword [rax + 0x18], r8
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x60]
sub rsp, 0x160
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm11
movaps xmmword [rax - 0x88], xmm12
mov r12, r9
mov rbx, r8
mov rdi, rdx
mov rax, qword [0x1800cea98]
xor r13d, r13d
test rax, rax
jne 0x1800956a2
mov rcx, qword [r8]
test rcx, rcx
je 0x180095663
mov rdx, qword [r8 + 0x10]
sub rdx, rcx
and rdx, 0xfffffffffffffff8
cmp rdx, 0x1000
jb 0x180095653
mov r8, qword [rcx - 8]
sub rcx, r8
add rdx, 0x27
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180095cf8
mov rcx, r8
call fcn.18004bc94
mov qword [rbx], r13
mov qword [rbx + 8], r13
mov qword [rbx + 0x10], r13
lea r11, [rsp + 0x160]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm11, xmmword [r11 - 0x50]
movaps xmm12, xmmword [r11 - 0x60]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
movss xmm8, dword [rax + 0x14]
addss xmm8, dword [0x1800ba7d8]
movss xmm6, dword [rax + 0x10]
movss xmm11, dword [rax + 8]
subss xmm11, dword [0x1800ba42c]
movss xmm7, dword [0x1800b96a4]
movups xmm0, xmmword [0x1800cebf8]
movups xmm1, xmmword [0x1800cec08]
movaps xmmword [rbp - 0x40], xmm0
movaps xmmword [rbp - 0x30], xmm0
movaps xmmword [rbp - 0x20], xmm1
movaps xmmword [rbp - 0x10], xmm1
lea r8, [rbp - 0x40]
movaps xmm0, xmm11
unpcklps xmm0, xmm7
movq rdx, xmm0
movaps xmm1, xmm6
unpcklps xmm1, xmm8
movq rcx, xmm1
call qword [0x1800cea28]
movaps xmm0, xmmword [0x1800ba880]
movq qword [rsp + 0x30], xmm0
psrldq xmm0, 8
movq qword [rsp + 0x38], xmm0
xorps xmm12, xmm12
xorps xmm3, xmm3
lea r8, [rsp + 0x30]
movaps xmm0, xmm11
unpcklps xmm0, xmm7
movq rdx, xmm0
movaps xmm1, xmm6
unpcklps xmm1, xmm8
movq rcx, xmm1
call qword [0x1800cea00]
mov rsi, qword [0x1800cea88]
cmp qword [0x1800cea90], r13
jne 0x180095766
test rsi, rsi
mov cl, 1
je 0x180095769
mov cl, r13b
movaps xmm3, xmm8
addss xmm3, xmm7
movaps xmm5, xmm6
addss xmm5, xmm11
movss xmm2, dword [0x1800ce9dc]
movss xmm4, dword [0x1800ce9d8]
comiss xmm4, xmm6
jb 0x1800957a0
comiss xmm2, xmm8
jb 0x1800957a0
comiss xmm4, xmm5
ja 0x1800957a0
comiss xmm2, xmm3
mov al, 1
jbe 0x1800957a3
mov al, r13b
movaps xmm0, xmmword [0x1800ba960]
movups xmmword [rsp + 0x30], xmm0
mov r10b, byte [0x1800ce9e1]
mov r11b, byte [0x1800ce9e0]
test al, al
je 0x180095828
movups xmm0, xmmword [0x1800cec28]
movups xmmword [rsp + 0x30], xmm0
test r11b, r11b
je 0x180095828
test r10b, r10b
jne 0x180095828
test cl, cl
je 0x180095828
mov rdx, r13
cmp byte [rdi], r13b
je 0x1800957ec
inc rdx
cmp byte [rdx + rdi], r13b
jne 0x1800957e3
movabs rcx, 0xcbf29ce484222325
mov r8, r13
test rdx, rdx
je 0x18009581c
movabs r9, 0x100000001b3
movsx rax, byte [r8 + rdi]
imul rcx, r9
xor rcx, rax
inc r8
cmp r8, rdx
jb 0x180095808
mov qword [0x1800cea88], rcx
jmp 0x180095bd4
mov rdx, r13
cmp byte [rdi], r13b
je 0x180095839
inc rdx
cmp byte [rdx + rdi], r13b
jne 0x180095830
movabs rcx, 0xcbf29ce484222325
mov r8, r13
test rdx, rdx
je 0x180095869
movabs r9, 0x100000001b3
movsx rax, byte [r8 + rdi]
imul rcx, r9
xor rcx, rax
inc r8
cmp r8, rdx
jb 0x180095855
cmp rsi, rcx
jne 0x180095bd4
movups xmm0, xmmword [0x1800ce2a0]
movups xmmword [rsp + 0x30], xmm0
mov rcx, qword [rbx + 8]
sub rcx, qword [rbx]
sar rcx, 3
xorps xmm0, xmm0
test rcx, rcx
js 0x180095898
cvtsi2ss xmm0, rcx
jmp 0x1800958ad
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mulss xmm0, xmm7
addss xmm0, xmm3
comiss xmm4, xmm6
jb 0x1800958ca
comiss xmm2, xmm8
jb 0x1800958ca
comiss xmm4, xmm5
ja 0x1800958ca
comiss xmm2, xmm0
jbe 0x1800958db
test r11b, r11b
je 0x1800958db
test r10b, r10b
jne 0x1800958db
mov qword [0x1800cea88], r13
mov rcx, qword [rbx + 8]
sub rcx, qword [rbx]
sar rcx, 3
xorps xmm1, xmm1
test rcx, rcx
js 0x1800958f5
cvtsi2ss xmm1, rcx
jmp 0x18009590a
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
mulss xmm1, xmm7
movups xmm0, xmmword [0x1800cec18]
movdqa xmmword [rsp + 0x40], xmm0
movss dword [rsp + 0x20], xmm12
lea r9, [rsp + 0x40]
movaps xmm0, xmm11
unpcklps xmm0, xmm1
movq r8, xmm0
movaps xmm1, xmm6
unpcklps xmm1, xmm3
movq rdx, xmm1
lea rcx, [0x1800cea48]
call fcn.180096204
mov r15d, r13d
mov rdx, qword [rbx + 8]
mov r8, qword [rbx]
mov rax, rdx
sub rax, r8
sar rax, 3
test rax, rax
je 0x180095b56
mov rsi, r13
movaps xmm9, xmm6
addss xmm9, xmm11
xorps xmm2, xmm2
cvtsi2ss xmm2, r15d
addss xmm2, dword [0x1800b90e4]
movaps xmm0, xmm2
addss xmm0, dword [0x1800b90e4]
mulss xmm0, xmm7
subss xmm0, dword [0x1800b9760]
movaps xmm1, xmm8
addss xmm1, xmm0
mulss xmm2, xmm7
addss xmm2, xmm8
movss xmm3, dword [0x1800ce9d8]
comiss xmm3, xmm6
jb 0x180095a3d
movss xmm0, dword [0x1800ce9dc]
comiss xmm0, xmm2
jb 0x180095a3d
comiss xmm3, xmm9
ja 0x180095a3d
comiss xmm0, xmm1
ja 0x180095a3d
mov r14b, 1
cmp byte [0x1800ce9e0], r13b
je 0x1800959f4
cmp byte [0x1800ce9e1], r13b
jne 0x1800959f4
mov dword [r12], r15d
mov qword [0x1800cea88], r13
movaps xmm0, xmmword [0x1800ba8f0]
movq qword [rsp + 0x40], xmm0
psrldq xmm0, 8
movq qword [rsp + 0x48], xmm0
movss dword [rsp + 0x20], xmm12
lea r9, [rsp + 0x40]
movaps xmm0, xmm11
unpcklps xmm0, xmm7
movq r8, xmm0
movaps xmm1, xmm6
unpcklps xmm1, xmm2
movq rdx, xmm1
lea rcx, [0x1800cea48]
call fcn.180096204
jmp 0x180095a40
mov r14b, r13b
mov rdx, qword [rbx]
mov rax, qword [rbx + 8]
sub rax, rdx
sar rax, 3
cmp rax, rsi
jbe 0x180095d04
mov rdx, qword [rdx + rsi*8]
lea rcx, [rsp + 0x60]
call qword [0x1800cea18]
cmp dword [r12], r15d
jne 0x180095a7f
movups xmm0, xmmword [0x1800ceb78]
movups xmmword [rsp + 0x78], xmm0
lea rcx, [rsp + 0x78]
jmp 0x180095ab0
test r14b, r14b
je 0x180095a95
movaps xmm0, xmmword [0x1800ba980]
movups xmmword [rbp - 0x78], xmm0
lea rax, [rbp - 0x78]
jmp 0x180095aa4
movaps xmm0, xmmword [0x1800ba940]
movups xmmword [rbp - 0x68], xmm0
lea rax, [rbp - 0x68]
movups xmm0, xmmword [rax]
movdqu xmmword [rbp - 0x58], xmm0
lea rcx, [rbp - 0x58]
mov r8, qword [rbx]
mov rax, qword [rbx + 8]
sub rax, r8
sar rax, 3
cmp rax, rsi
jbe 0x180095d04
movd xmm1, r15d
cvtdq2ps xmm1, xmm1
addss xmm1, dword [0x1800b90e4]
mulss xmm1, xmm7
movss xmm0, dword [rsp + 0x64]
mulss xmm0, dword [0x1800b90e0]
addss xmm1, xmm0
subss xmm1, dword [0x1800ba0c4]
movaps xmm2, xmm8
addss xmm2, xmm1
movaps xmm1, xmm6
addss xmm1, dword [0x1800b9764]
movups xmm0, xmmword [rcx]
movdqu xmmword [rsp + 0x50], xmm0
mov dword [rsp + 0x20], r13d
lea r9, [rsp + 0x50]
mov r8, qword [r8 + rsi*8]
unpcklps xmm1, xmm2
movq rdx, xmm1
lea rcx, [0x1800cea48]
call fcn.180099aec
inc r15d
inc rsi
mov rdx, qword [rbx + 8]
mov r8, qword [rbx]
mov rcx, rdx
sub rcx, r8
sar rcx, 3
movsxd rax, r15d
cmp rax, rcx
jb 0x180095973
movaps xmm0, xmmword [0x1800ba880]
sub rdx, r8
sar rdx, 3
xorps xmm1, xmm1
test rdx, rdx
js 0x180095b73
cvtsi2ss xmm1, rdx
jmp 0x180095b88
mov rax, rdx
shr rax, 1
and edx, 1
or rax, rdx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
mulss xmm1, xmm7
movaps xmm2, xmm8
addss xmm2, xmm7
movq qword [rsp + 0x40], xmm0
psrldq xmm0, 8
movq qword [rsp + 0x48], xmm0
movss dword [rsp + 0x20], xmm12
lea r9, [rsp + 0x40]
movaps xmm0, xmm11
unpcklps xmm0, xmm1
movq r8, xmm0
movaps xmm1, xmm6
unpcklps xmm1, xmm2
movq rdx, xmm1
lea rcx, [0x1800cea48]
call fcn.1800988b0
mov r8, qword [0x1800cea18]
movsxd rdx, dword [r12]
mov rcx, qword [rbx]
mov rax, qword [rbx + 8]
sub rax, rcx
sar rax, 3
cmp rax, rdx
jbe 0x180095cfe
mov rdx, qword [rcx + rdx*8]
lea rcx, [rsp + 0x68]
call r8
mov rdx, rdi
lea rcx, [rsp + 0x70]
call qword [0x1800cea18]
mov r10, qword [0x1800cea10]
movups xmm9, xmmword [rsp + 0x30]
movsxd rdx, dword [r12]
mov rcx, qword [rbx]
mov rax, qword [rbx + 8]
sub rax, rcx
sar rax, 3
cmp rax, rdx
jbe 0x180095cfe
movss xmm0, dword [rsp + 0x6c]
mulss xmm0, dword [0x1800b90e0]
movss xmm1, dword [0x1800b8ff8]
subss xmm1, xmm0
movaps xmm2, xmm8
addss xmm2, xmm1
movaps xmm0, xmm6
addss xmm0, dword [0x1800b9764]
movdqa xmmword [rsp + 0x50], xmm9
xor r9d, r9d
lea r8, [rsp + 0x50]
mov rdx, qword [rcx + rdx*8]
unpcklps xmm0, xmm2
movq rcx, xmm0
call r10
movss xmm0, dword [rsp + 0x74]
mulss xmm0, dword [0x1800b90e0]
subss xmm7, xmm0
addss xmm7, dword [0x1800b9764]
subss xmm8, xmm7
subss xmm6, dword [0x1800ba104]
movups xmmword [rsp + 0x50], xmm9
xor r9d, r9d
lea r8, [rsp + 0x50]
mov rdx, rdi
unpcklps xmm6, xmm8
movq rcx, xmm6
call qword [0x1800cea10]
mov rax, qword [0x1800cea98]
movss xmm0, dword [rax + 0x14]
addss xmm0, dword [0x1800ba0e0]
movss dword [rax + 0x14], xmm0
mov rcx, qword [rbx]
test rcx, rcx
je 0x180095663
mov rdx, qword [rbx + 0x10]
jmp 0x180095627
call fcn.1800449bc
nop
call fcn.180093008
int3
call fcn.180093008
int3