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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov rsi, r9
mov rbx, r8
mov r15, rdx
mov qword [rsp + 0x30], rdx
mov r13, rcx
lea rbp, [rcx + 8]
mov qword [rsp + 0x38], rbp
xor r12d, r12d
mov qword [rsp + 0x40], r12
lea ecx, [r12 + 0x40]
call fcn.18003eef4
mov r14, rax
mov qword [rsp + 0x40], rax
mov rdx, qword [rbx]
mov qword [rax + 0x10], r12
mov qword [rax + 0x20], r12
mov qword [rax + 0x28], 0xf
mov byte [rax + 0x10], r12b
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], r12b
jne 0x18002dec6
lea rcx, [rax + 0x10]
call fcn.180013760
movups xmm0, xmmword [rsi]
movups xmmword [r14 + 0x30], xmm0
mov r8, qword [r14 + 0x20]
lea rdx, [r14 + 0x10]
cmp qword [r14 + 0x28], 0x10
jb 0x18002def3
mov rdx, qword [r14 + 0x10]
movabs rsi, 0xcbf29ce484222325
mov rcx, r12
test r8, r8
je 0x18002df23
movabs r9, 0x100000001b3
nop
movzx eax, byte [rcx + rdx]
xor rsi, rax
imul rsi, r9
inc rcx
cmp rcx, r8
jb 0x18002df10
mov r9, rsi
lea r8, [r14 + 0x10]
lea rdx, [rsp + 0x20]
mov rcx, r13
call fcn.18002ef50
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x18002dfb0
mov qword [r15], rax
mov byte [r15 + 8], 0
test r14, r14
je 0x18002e1ad
mov rdx, qword [r14 + 0x28]
cmp rdx, 0x10
jb 0x18002df8d
inc rdx
mov rcx, qword [r14 + 0x10]
cmp rdx, 0x1000
jb 0x18002df88
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18002e1d5
mov rcx, r8
call fcn.18003eec0
mov qword [r14 + 0x20], r12
mov qword [r14 + 0x28], 0xf
mov byte [r14 + 0x10], 0
mov edx, 0x40
mov rcx, r14
call fcn.18003eec0
jmp 0x18002e1ad
mov rdx, qword [r13 + 0x10]
movabs rax, 0x3ffffffffffffff
cmp rdx, rax
je 0x18002e1c8
lea rcx, [rdx + 1]
movss xmm3, dword [r13]
xorps xmm0, xmm0
test rcx, rcx
js 0x18002dfe0
cvtsi2ss xmm0, rcx
jmp 0x18002dff5
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rbx, qword [r13 + 0x38]
xorps xmm2, xmm2
test rbx, rbx
js 0x18002e008
cvtsi2ss xmm2, rbx
jmp 0x18002e020
mov rcx, rbx
shr rcx, 1
mov rax, rbx
and eax, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm1, xmm0
divss xmm1, xmm2
comiss xmm1, xmm3
seta al
test al, al
je 0x18002e151
divss xmm0, xmm3
call fcn.1800642dc
xor ecx, ecx
movss xmm1, dword [0x18007e198]
comiss xmm0, xmm1
jb 0x18002e063
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x18002e063
movabs rax, 0x8000000000000000
mov rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x18002e095
cmp rbx, 0x200
jae 0x18002e092
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x18002e095
mov rbx, rcx
mov rdx, rbx
mov rcx, r13
call fcn.18002ccb0
mov rax, qword [r13 + 0x30]
and rax, rsi
add rax, rax
mov rdx, qword [r13 + 0x18]
mov rbx, qword [rdx + rax*8 + 8]
mov rcx, qword [rbp]
cmp rbx, rcx
jne 0x18002e0c8
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], r12
jmp 0x18002e142
mov r15, qword [rdx + rax*8]
mov r12, qword [r14 + 0x28]
mov rbp, qword [r14 + 0x20]
nop dword [rax]
nop dword [rax + rax]
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x18002e0f2
mov rdx, qword [rdx]
lea rcx, [r14 + 0x10]
cmp r12, 0x10
jb 0x18002e100
mov rcx, qword [r14 + 0x10]
cmp rbp, rax
jne 0x18002e111
mov r8, rbp
call fcn.180041b30
test eax, eax
je 0x18002e11c
cmp rbx, r15
je 0x18002e12b
mov rbx, qword [rbx + 8]
jmp 0x18002e0e0
mov rax, qword [rbx]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rbx
jmp 0x18002e139
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], 0
lea rbp, [r13 + 8]
mov r15, qword [rsp + 0x30]
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
mov rdx, qword [r13 + 0x10]
mov r8, qword [rsp + 0x20]
mov r9, qword [r8 + 8]
lea rax, [rdx + 1]
mov qword [r13 + 0x10], rax
mov qword [r14], r8
mov qword [r14 + 8], r9
mov qword [r9], r14
mov qword [r8 + 8], r14
mov rcx, qword [r13 + 0x18]
mov rax, qword [r13 + 0x30]
and rax, rsi
add rax, rax
mov rdx, qword [rcx + rax*8]
cmp rdx, qword [rbp]
jne 0x18002e18e
mov qword [rcx + rax*8], r14
jmp 0x18002e1a0
cmp rdx, r8
jne 0x18002e199
mov qword [rcx + rax*8], r14
jmp 0x18002e1a5
cmp qword [rcx + rax*8 + 8], r9
jne 0x18002e1a5
mov qword [rcx + rax*8 + 8], r14
mov qword [r15], r14
mov byte [r15 + 8], 1
mov rax, r15
mov rbx, qword [rsp + 0xa8]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rcx, str.unordered_map_set_too_long
call fcn.18003d2a0
nop
call fcn.180045944
int3