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

Disassembly:
push rbx
push rsi
sub rsp, 0x98
mov rax, qword [0x140098080]
xor rax, rsp
mov qword [rsp + 0x68], rax
mov rdx, qword [rcx]
mov rbx, rcx
mov r8, qword [rcx + 0x18]
mov rcx, rdx
lea rax, [rdx + 1]
add rax, r8
cmp rdx, rax
je 0x14000d70f
movdqa xmm3, xmmword [0x14008ead0]
xorps xmm2, xmm2
movdqa xmm4, xmmword [0x14008eaf0]
nop word [rax + rax]
movdqu xmm0, xmmword [rcx]
movdqa xmm1, xmm2
pcmpgtb xmm1, xmm0
andnps xmm1, xmm3
orps xmm1, xmm4
movdqu xmmword [rcx], xmm1
add rcx, 0x10
cmp rcx, rax
jne 0x14000d6f0
movups xmm0, xmmword [rdx]
xor esi, esi
movups xmmword [rax], xmm0
mov byte [r8 + rdx], 0xff
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x14000d9a9
mov qword [rsp + 0xb8], rbp
movabs rdx, 0xcbf29ce484222325
mov qword [rsp + 0xc0], rdi
mov rbp, 0xfffffffffffffff0
mov qword [rsp + 0xc8], r12
movabs rdi, 0xde5fb9d2630458e9
mov qword [rsp + 0x90], r13
lea r12, [0x14006e360]
mov qword [rsp + 0x88], r14
movabs r13, 0x100000001b3
movaps xmmword [rsp + 0x70], xmm6
xor r14d, r14d
movdqa xmm6, xmmword [0x14008eb00]
mov qword [rsp + 0x80], r15
nop word [rax + rax]
mov r10, qword [rbx]
cmp byte [r10 + rsi], 0xfe
lea r11, [r10 + rsi]
jne 0x14000d95d
mov rcx, qword [rbx + 8]
add rcx, r14
mov rax, rcx
cmp qword [rcx + 0x18], 7
jbe 0x14000d7c6
mov rax, qword [rcx]
mov rcx, qword [rcx + 0x10]
mov r8, rdx
lea r9, [rax + rcx*2]
cmp rax, r9
je 0x14000d7f8
nop word [rax + rax]
movsx rcx, byte [rax]
inc rax
movsx rdx, byte [rcx + r12]
xor r8, rdx
imul r8, r13
cmp rax, r9
jne 0x14000d7e0
mov r9, qword [rbx + 0x18]
mov rax, rdi
mul r8
movdqa xmm1, xmm6
xor ecx, ecx
lea r8, [rdx + rax]
mov r15, r8
shr r15, 7
and r15, r9
mov rdx, r15
movdqu xmm0, xmmword [r10 + r15]
pcmpgtb xmm1, xmm0
pmovmskb eax, xmm1
test eax, eax
jne 0x14000d850
nop dword [rax + rax]
add rcx, 0x10
movdqa xmm1, xmm6
add rdx, rcx
and rdx, r9
movdqu xmm0, xmmword [r10 + rdx]
pcmpgtb xmm1, xmm0
pmovmskb eax, xmm1
test eax, eax
je 0x14000d830
bsf edi, eax
mov rax, rsi
mov dword [rsp + 0x20], 0
add rdi, rdx
sub rax, r15
and rdi, r9
and r8b, 0x7f
mov rcx, rdi
sub rcx, r15
xor rcx, rax
and rcx, r9
test rcx, 0xfffffffffffffff0
jne 0x14000d8a0
mov byte [r11], r8b
mov rcx, rbp
mov rax, qword [rbx + 0x18]
and rcx, rax
and eax, 0xf
add rcx, rax
mov rax, qword [rbx]
mov byte [rcx + rax + 1], r8b
jmp 0x14000d949
lea rax, [r10 + rdi]
lea rcx, [rdi - 0x10]
shl rdi, 6
cmp byte [rax], 0x80
mov byte [rax], r8b
mov rax, qword [rbx + 0x18]
jne 0x14000d8fb
and rcx, rax
and eax, 0xf
add rcx, rax
mov rax, qword [rbx]
mov byte [rcx + rax + 1], r8b
mov rax, qword [rbx + 8]
lea r8, [r14 + rax]
lea rdx, [rdi + rax]
call fcn.14000be20
mov rax, qword [rbx]
mov byte [rsi + rax], 0x80
mov rax, qword [rbx + 0x18]
mov rcx, rax
and eax, 0xf
and rcx, rbp
add rcx, rax
mov rax, qword [rbx]
mov byte [rcx + rax + 1], 0x80
jmp 0x14000d949
and rcx, rax
lea rdx, [rsp + 0x28]
and eax, 0xf
add rcx, rax
mov rax, qword [rbx]
mov byte [rcx + rax + 1], r8b
mov r8, qword [rbx + 8]
add r8, r14
call fcn.14000be20
mov rax, qword [rbx + 8]
lea r8, [rdi + rax]
lea rdx, [r14 + rax]
call fcn.14000be20
mov rdx, qword [rbx + 8]
lea r8, [rsp + 0x28]
add rdx, rdi
call fcn.14000be20
dec rsi
sub r14, 0x40
dec rbp
movabs rdx, 0xcbf29ce484222325
movabs rdi, 0xde5fb9d2630458e9
mov rcx, qword [rbx + 0x18]
inc rsi
add r14, 0x40
inc rbp
cmp rsi, rcx
jne 0x14000d7a0
movaps xmm6, xmmword [rsp + 0x70]
mov r15, qword [rsp + 0x80]
mov r14, qword [rsp + 0x88]
mov r13, qword [rsp + 0x90]
mov r12, qword [rsp + 0xc8]
mov rdi, qword [rsp + 0xc0]
mov rbp, qword [rsp + 0xb8]
mov rax, rcx
shr rcx, 3
sub rax, qword [rbx + 0x10]
sub rax, rcx
mov qword [rbx + 0x28], rax
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.14003bb30
add rsp, 0x98
pop rsi
pop rbx
ret