Function at 0x14013a400
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov rax, qword [0x1402a1fc0]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov rax, qword [rcx]
mov r8, rdx
shr r8, 5
mov r13, rcx
mov qword [rsp + 0x30], rdx
add rcx, 0x20
and edx, 0x1f
lea r9, [rax + r8*4]
mov eax, dword [rax + r8*4]
lea r8, [rsp + 0x30]
btr eax, edx
lea rdx, [rsp + 0x20]
mov dword [r9], eax
call fcn.14013ac70
mov rdi, qword [r13 + 0x70]
mov rsi, qword [rsp + 0x30]
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x14013a490
nop word [rax + rax]
mov rcx, qword [rbx + 0x18]
mov rdx, rsi
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rbx, qword [rbx]
cmp rbx, rdi
jne 0x14013a470
nop word [rax + rax]
movzx r8d, byte [rsp + 0x31]
movabs r14, 0x100000001b3
movzx r9d, byte [rsp + 0x32]
movabs rax, 0xcbf29ce484222325
movzx r11d, byte [rsp + 0x33]
movzx edi, byte [rsp + 0x34]
movzx ebp, byte [rsp + 0x35]
movzx r15d, byte [rsp + 0x36]
movzx r12d, byte [rsp + 0x37]
mov rcx, qword [r13 + 0xd8]
movzx edx, sil
xor rdx, rax
mov rax, qword [r13 + 0xc0]
imul rdx, r14
xor rdx, r8
imul rdx, r14
xor rdx, r9
imul rdx, r14
xor rdx, r11
imul rdx, r14
xor rdx, rdi
imul rdx, r14
xor rdx, rbp
imul rdx, r14
xor rdx, r15
imul rdx, r14
xor rdx, r12
imul rdx, r14
and rcx, rdx
add rcx, rcx
mov rbx, qword [rax + rcx*8]
cmp rbx, qword [r13 + 0xb0]
je 0x14013a5e9
mov rax, qword [rax + rcx*8 + 8]
cmp qword [rbx + 0x10], rsi
je 0x14013a552
nop dword [rax + rax]
cmp rbx, rax
je 0x14013a5e9
mov rbx, qword [rbx]
cmp qword [rbx + 0x10], rsi
jne 0x14013a540
mov r14, qword [rbx]
cmp rbx, rax
je 0x14013a571
nop word [rax + rax]
mov rcx, r14
cmp rsi, qword [r14 + 0x10]
jne 0x14013a571
mov r14, qword [r14]
cmp rcx, rax
jne 0x14013a560
cmp rbx, r14
je 0x14013a5df
mov rdx, qword [rbx + 0x20]
test rdx, rdx
je 0x14013a5aa
cmp dword [rdx + 8], 0
je 0x14013a5aa
mov eax, dword [rdx + 8]
test eax, eax
je 0x14013a5a2
nop dword [rax]
lea ecx, [rax + 1]
lock cmpxchg dword [rdx + 8], ecx
je 0x14013a677
test eax, eax
jne 0x14013a590
mov byte [8], 0
mov rbx, qword [rbx]
cmp rbx, r14
jne 0x14013a576
mov rsi, qword [rsp + 0x30]
movzx r12d, byte [rsp + 0x37]
movzx r15d, byte [rsp + 0x36]
movzx ebp, byte [rsp + 0x35]
movzx edi, byte [rsp + 0x34]
movzx r11d, byte [rsp + 0x33]
movzx r9d, byte [rsp + 0x32]
movzx r8d, byte [rsp + 0x31]
movabs r14, 0x100000001b3
mov rcx, qword [r13 + 0xd8]
movabs rax, 0xcbf29ce484222325
movzx edx, sil
xor rdx, rax
movzx eax, r8b
mov r8, qword [r13 + 0xb0]
imul rdx, r14
xor rdx, rax
movzx eax, r9b
imul rdx, r14
xor rdx, rax
movzx eax, r11b
imul rdx, r14
xor rdx, rax
movzx eax, dil
imul rdx, r14
xor rdx, rax
movzx eax, bpl
imul rdx, r14
xor rdx, rax
movzx eax, r15b
imul rdx, r14
xor rdx, rax
movzx eax, r12b
imul rdx, r14
xor rdx, rax
mov rax, qword [r13 + 0xc0]
imul rdx, r14
and rcx, rdx
add rcx, rcx
mov rdx, qword [rax + rcx*8]
cmp rdx, r8
jne 0x14013a6c8
mov rdx, r8
jmp 0x14013a701
mov rdi, qword [rbx + 0x20]
mov rax, qword [rbx + 0x18]
mov byte [rax + 8], 0
test rdi, rdi
je 0x14013a5aa
mov eax, 0xffffffff
lock xadd dword [rdi + 8], eax
cmp eax, 1
jne 0x14013a5aa
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov eax, 0xffffffff
lock xadd dword [rdi + 0xc], eax
cmp eax, 1
jne 0x14013a5aa
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
jmp 0x14013a5aa
mov rax, qword [rax + rcx*8 + 8]
cmp qword [rdx + 0x10], rsi
je 0x14013a6e1
cmp rdx, rax
je 0x14013a66f
mov rdx, qword [rdx]
cmp qword [rdx + 0x10], rsi
jne 0x14013a6d3
mov r8, qword [rdx]
cmp rdx, rax
je 0x14013a701
nop dword [rax]
mov r9, r8
cmp rsi, qword [r8 + 0x10]
jne 0x14013a701
mov r8, qword [r8]
cmp r9, rax
jne 0x14013a6f0
lea rcx, [r13 + 0xa8]
call fcn.14013a9e0
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.1401e0b10
mov rbx, qword [rsp + 0x90]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret