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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rsi, r8
mov r15, rdx
mov r13, rcx
movabs r9, 0xcbf29ce484222325
mov r10, r9
xor edx, edx
movabs r8, 0x100000001b3
movzx eax, byte [rdx + rsi]
xor r10, rax
imul r10, r8
inc rdx
cmp rdx, 4
jb 0x1800f3006
xor ecx, ecx
movzx eax, byte [rsi + rcx + 4]
xor r9, rax
imul r9, r8
inc rcx
cmp rcx, 4
jb 0x1800f301c
imul r14, r10, 0x1000193
xor r14, r9
mov rax, qword [r13 + 0x30]
and rax, r14
add rax, rax
mov rcx, qword [r13 + 0x18]
mov rbx, qword [rcx + rax*8 + 8]
lea r12, [r13 + 8]
mov rbp, qword [r12]
cmp rbx, rbp
jne 0x1800f30af
mov rbx, rbp
movabs rax, 0x7ffffffffffffff
cmp qword [r13 + 0x10], rax
je 0x1800f3292
mov qword [rsp + 0x20], r12
and qword [rsp + 0x28], 0
mov ecx, 0x20
call fcn.1800017b8
mov rdi, rax
mov qword [rsp + 0x28], rax
mov rcx, qword [rsi]
mov qword [rax + 0x10], rcx
and qword [rax + 0x18], 0
mov rcx, qword [r13 + 0x10]
add rcx, 1
xorps xmm0, xmm0
js 0x1800f30f3
cvtsi2ss xmm0, rcx
jmp 0x1800f3108
mov rdx, qword [rcx + rax*8]
mov ecx, dword [rsi]
cmp dword [rbx + 0x10], ecx
jne 0x1800f30c2
mov eax, dword [rsi + 4]
cmp dword [rbx + 0x14], eax
je 0x1800f30cd
cmp rbx, rdx
je 0x1800f30d8
mov rbx, qword [rbx + 8]
jmp 0x1800f30b5
mov rbp, qword [rbx]
mov rax, rbx
mov rbx, rbp
jmp 0x1800f30dd
mov rbp, rbx
xor eax, eax
test rax, rax
je 0x1800f305e
mov qword [r15], rax
mov byte [r15 + 8], 0
jmp 0x1800f3272
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rsi, qword [r13 + 0x38]
xorps xmm2, xmm2
test rsi, rsi
js 0x1800f311b
cvtsi2ss xmm2, rsi
jmp 0x1800f3133
mov rcx, rsi
shr rcx, 1
mov rax, rsi
and eax, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm1, xmm0
divss xmm1, xmm2
comiss xmm1, dword [r13]
seta al
test al, al
je 0x1800f3222
divss xmm0, dword [r13]
call fcn.180118e70
xor ecx, ecx
movss xmm1, dword [0x1801459e8]
comiss xmm0, xmm1
jb 0x1800f317a
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1800f317a
movabs rax, 0x8000000000000000
mov rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rsi, rcx
jae 0x1800f31a8
cmp rsi, 0x200
jae 0x1800f31a5
shl rsi, 3
cmp rsi, rcx
jae 0x1800f31a8
mov rsi, rcx
mov rdx, rsi
mov rcx, r13
call fcn.1800f3758
mov rax, r14
and rax, qword [r13 + 0x30]
add rax, rax
mov rdx, qword [r13 + 0x18]
mov rcx, qword [rdx + rax*8 + 8]
mov rbx, qword [r12]
cmp rcx, rbx
jne 0x1800f31d6
mov qword [rsp + 0x20], rbx
jmp 0x1800f320c
mov r8, qword [rdx + rax*8]
mov edx, dword [rdi + 0x10]
mov rbx, rcx
cmp dword [rcx + 0x10], edx
jne 0x1800f31ed
mov eax, dword [rdi + 0x14]
cmp dword [rcx + 0x14], eax
je 0x1800f31f8
cmp rcx, r8
je 0x1800f3207
mov rcx, qword [rcx + 8]
jmp 0x1800f31dd
mov rbx, qword [rcx]
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], rcx
jmp 0x1800f3212
mov qword [rsp + 0x20], rcx
and qword [rsp + 0x28], 0
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
mov rbp, qword [rsp + 0x20]
mov rcx, qword [rbx + 8]
inc qword [r13 + 0x10]
mov qword [rdi], rbp
mov qword [rdi + 8], rcx
mov qword [rcx], rdi
mov qword [rbx + 8], rdi
mov rax, qword [r13 + 0x18]
and r14, qword [r13 + 0x30]
add r14, r14
mov rdx, qword [rax + r14*8]
cmp rdx, qword [r12]
jne 0x1800f3253
mov qword [rax + r14*8], rdi
jmp 0x1800f3265
cmp rdx, rbp
jne 0x1800f325e
mov qword [rax + r14*8], rdi
jmp 0x1800f326a
cmp qword [rax + r14*8 + 8], rcx
jne 0x1800f326a
mov qword [rax + r14*8 + 8], rdi
mov qword [r15], rdi
mov byte [r15 + 8], 1
mov rax, r15
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
lea rcx, str.unordered_map_set_too_long
call fcn.18003e5e4
int3