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

Disassembly:
cmp rdx, r8
je 0x18000ae17
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov rdi, r8
mov rbx, rdx
mov r15, rcx
xor r14d, r14d
movabs r12, 0x222222222222222
movabs r9, 0x100000001b3
movabs rax, 0xcbf29ce484222325
mov r8, qword [rbx + 0x20]
lea rdx, [rbx + 0x10]
cmp qword [rbx + 0x28], 7
jbe 0x18000abc2
mov rdx, qword [rbx + 0x10]
mov rbp, rax
add r8, r8
mov rcx, r14
je 0x18000abe3
nop dword [rax]
movzx eax, byte [rcx + rdx]
xor rbp, rax
imul rbp, r9
inc rcx
cmp rcx, r8
jb 0x18000abd0
mov r9, rbp
lea r8, [rbx + 0x10]
lea rdx, [rsp + 0x40]
mov rcx, r15
call fcn.180006d50
cmp qword [rsp + 0x48], 0
jne 0x18000adee
cmp qword [r15 + 0x10], r12
je 0x18000ae18
lea r13, [r15 + 8]
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x38], r14
mov ecx, 0x78
call fcn.180028dc0
mov r12, rax
mov qword [rsp + 0x38], rax
lea r14, [rax + 0x10]
mov qword [rsp + 0x88], r14
lea rdx, [rbx + 0x10]
mov rcx, r14
call fcn.180012000
nop
lea rcx, [r14 + 0x20]
lea rdx, [rbx + 0x30]
call fcn.180011f30
nop
mov rdx, qword [r15 + 0x10]
add rdx, 1
xorps xmm0, xmm0
js 0x18000ac68
cvtsi2ss xmm0, rdx
jmp 0x18000ac80
mov rcx, rdx
shr rcx, 1
mov rax, rdx
and eax, 1
or rcx, rax
cvtsi2ss xmm0, rcx
addss xmm0, xmm0
mov rcx, qword [r15 + 0x38]
xorps xmm1, xmm1
test rcx, rcx
js 0x18000ac93
cvtsi2ss xmm1, rcx
jmp 0x18000aca8
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [r15]
seta al
mov rcx, r15
test al, al
je 0x18000ad8a
call fcn.180019050
mov rdx, rax
mov rcx, r15
call fcn.1800190f0
mov rcx, qword [r15 + 0x30]
and rcx, rbp
mov rdx, qword [r15 + 0x18]
mov rax, rcx
add rax, rax
mov r9, qword [rdx + rax*8 + 8]
mov rax, qword [r13]
cmp r9, rax
jne 0x18000acf4
mov qword [rsp + 0x20], rax
jmp 0x18000ad73
add rcx, rcx
mov r11, qword [rdx + rcx*8]
mov rsi, qword [r14 + 0x18]
mov r10, qword [r14 + 0x10]
nop dword [rax]
nop word [rax + rax]
lea rcx, [r9 + 0x10]
mov rax, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 7
jbe 0x18000ad22
mov rcx, qword [rcx]
mov r8, r14
cmp rsi, 7
jbe 0x18000ad2e
mov r8, qword [r14]
cmp r10, rax
jne 0x18000ad63
mov rdx, r10
test r10, r10
je 0x18000ad54
sub r8, rcx
nop
movzx eax, word [r8 + rcx]
cmp ax, word [rcx]
jne 0x18000ad63
add rcx, 2
sub rdx, 1
jne 0x18000ad40
mov rax, qword [r9]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], r9
jmp 0x18000ad7c
cmp r9, r11
je 0x18000ad6e
mov r9, qword [r9 + 8]
jmp 0x18000ad10
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x28], 0
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, r15
xor r14d, r14d
mov qword [rsp + 0x38], r14
mov rdx, qword [rsp + 0x40]
mov r8, qword [rdx + 8]
inc qword [r15 + 0x10]
mov qword [r12], rdx
mov qword [r12 + 8], r8
mov qword [r8], r12
mov qword [rdx + 8], r12
mov rcx, qword [rcx + 0x18]
mov rax, qword [r15 + 0x30]
and rax, rbp
add rax, rax
mov r9, qword [rcx + rax*8]
cmp r9, qword [r13]
jne 0x18000adcd
mov qword [rcx + rax*8], r12
jmp 0x18000addf
cmp r9, rdx
jne 0x18000add8
mov qword [rcx + rax*8], r12
jmp 0x18000ade4
cmp qword [rcx + rax*8 + 8], r8
jne 0x18000ade4
mov qword [rcx + rax*8 + 8], r12
movabs r12, 0x222222222222222
mov rbx, qword [rbx]
cmp rbx, rdi
jne 0x18000ab9b
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
lea rcx, str.unordered_map_set_too_long
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_
int3