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

Disassembly:
cmp rdx, r8
je 0x1800dce9c
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov rbx, r8
mov rsi, rdx
mov rbp, rcx
xor r13d, r13d
movabs r14, 0x492492492492492
movabs r9, 0x100000001b3
movabs rax, 0xcbf29ce484222325
mov r8, qword [rsi + 0x10]
mov rdx, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x1800dcc72
mov rdx, qword [rsi]
mov rdi, rax
mov rcx, r13
test r8, r8
je 0x1800dcc93
nop dword [rax]
movzx eax, byte [rdx + rcx]
xor rdi, rax
imul rdi, r9
inc rcx
cmp rcx, r8
jb 0x1800dcc80
mov r9, rdi
mov r8, rsi
lea rdx, [rsp + 0x40]
mov rcx, rbp
call fcn.1800dc660
cmp qword [rsp + 0x48], 0
jne 0x1800dce78
cmp qword [rbp + 0x10], r14
je 0x1800dce9d
lea r12, [rbp + 8]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], r13
mov ecx, 0x38
call fcn.180182770
mov r15, rax
mov qword [rsp + 0x38], rax
mov rdx, rsi
lea rcx, [rax + 0x10]
call fcn.1800e2dc0
mov ecx, dword [rsi + 0x20]
mov dword [r15 + 0x30], ecx
mov rcx, qword [rbp + 0x10]
add rcx, 1
vxorps xmm1, xmm1, xmm1
js 0x1800dcd04
vcvtsi2ss xmm1, xmm1, rcx
jmp 0x1800dcd19
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
vcvtsi2ss xmm1, xmm1, rax
vaddss xmm1, xmm1, xmm1
mov rcx, qword [rbp + 0x38]
vxorps xmm0, xmm0, xmm0
test rcx, rcx
js 0x1800dcd2d
vcvtsi2ss xmm0, xmm0, rcx
jmp 0x1800dcd42
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
vcvtsi2ss xmm0, xmm0, rax
vaddss xmm0, xmm0, xmm0
vdivss xmm0, xmm1, xmm0
vcomiss xmm0, dword [rbp]
seta al
test al, al
je 0x1800dce19
mov rcx, rbp
call fcn.1800e7670
mov rax, qword [rbp + 0x30]
and rax, rdi
add rax, rax
mov rdx, qword [rbp + 0x18]
mov rbx, qword [rdx + rax*8 + 8]
mov rcx, qword [r12]
cmp rbx, rcx
jne 0x1800dcd81
mov qword [rsp + 0x20], rcx
jmp 0x1800dce00
mov r12, qword [rdx + rax*8]
mov r13, qword [r15 + 0x28]
mov rbp, qword [r15 + 0x20]
nop dword [rax]
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800dcda2
mov rdx, qword [rdx]
lea rcx, [r15 + 0x10]
cmp r13, 0xf
jbe 0x1800dcdb0
mov rcx, qword [r15 + 0x10]
cmp rbp, rax
jne 0x1800dcdc1
mov r8, rbp
call fcn.180184e00
test eax, eax
je 0x1800dcdcc
cmp rbx, r12
je 0x1800dcdeb
mov rbx, qword [rbx + 8]
jmp 0x1800dcd90
mov rax, qword [rbx]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rbx
mov rbp, qword [rsp + 0x90]
mov r12, qword [rsp + 0x30]
xor r13d, r13d
jmp 0x1800dce05
mov qword [rsp + 0x20], rbx
xor r13d, r13d
mov rbp, qword [rsp + 0x90]
mov r12, qword [rsp + 0x30]
mov qword [rsp + 0x28], r13
vmovups xmm0, xmmword [rsp + 0x20]
vmovdqa xmmword [rsp + 0x40], xmm0
mov rbx, qword [rsp + 0xa0]
mov qword [rsp + 0x38], r13
mov rdx, qword [rsp + 0x40]
mov r8, qword [rdx + 8]
inc qword [rbp + 0x10]
mov qword [r15], rdx
mov qword [r15 + 8], r8
mov qword [r8], r15
mov qword [rdx + 8], r15
mov rcx, qword [rbp + 0x18]
mov rax, qword [rbp + 0x30]
and rax, rdi
add rax, rax
mov r9, qword [rcx + rax*8]
cmp r9, qword [r12]
jne 0x1800dce57
mov qword [rcx + rax*8], r15
jmp 0x1800dce69
cmp r9, rdx
jne 0x1800dce62
mov qword [rcx + rax*8], r15
jmp 0x1800dce6e
cmp qword [rcx + rax*8 + 8], r8
jne 0x1800dce6e
mov qword [rcx + rax*8 + 8], r15
movabs r14, 0x492492492492492
add rsi, 0x28
cmp rsi, rbx
jne 0x1800dcc4d
mov rbx, qword [rsp + 0x98]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rcx, [0x1800a9538]
call fcn.1800e6e30
int3