Function at 0x18006fbc0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
cmp qword [rcx + 0x28], 0
mov r13, rdx
mov r15, rcx
je 0x18006ff45
lea rcx, [rsp + 0x20]
call fcn.180131f70
lea rcx, [rsp + 0x20]
call fcn.180132880
test eax, eax
je 0x18006ff45
mov r12d, 0x1601
mov rax, qword [rsp + 0x30]
movabs r14, 0x100000001b3
mov ebx, dword [rax]
mov edi, ebx
mov dword [rsp + 0x80], ebx
mov esi, ebx
shr edi, 0x18
mov ebp, ebx
shr esi, 0x10
shr ebp, 8
cmp ebx, 0x1000
jb 0x18006ff33
mov rax, qword [r15 + 0x28]
cmp byte [rax + 0x67], 0
je 0x18006fd7b
lea r12, [rax + 8]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockShared]
mov r14, qword [r15 + 0x28]
movabs rdx, 0x100000001b3
movabs rax, 0xcbf29ce484222325
movzx ecx, bl
xor rcx, rax
movzx eax, bpl
imul rcx, rdx
mov r8, qword [r14 + 0x88]
mov r11, qword [r14 + 0x70]
xor rcx, rax
imul rcx, rdx
movzx eax, sil
xor esi, esi
xor rcx, rax
mov r10d, esi
imul rcx, rdx
mov eax, edi
xor rcx, rax
movabs rax, 0xde5fb9d2630458e9
imul rcx, rdx
mul rcx
lea rcx, [rax + rdx]
mov rdx, rcx
shr rdx, 7
and rdx, r8
and cl, 0x7f
movsx eax, cl
movd xmm2, eax
punpcklbw xmm2, xmm2
punpcklwd xmm2, xmm2
pshufd xmm2, xmm2, 0
nop dword [rax + rax]
movdqu xmm1, xmmword [r11 + rdx]
movdqa xmm0, xmm1
pcmpeqb xmm0, xmm2
pmovmskb eax, xmm0
test eax, eax
je 0x18006fd19
mov r9, qword [r14 + 0x78]
nop word [rax + rax]
bsf ecx, eax
movsxd rcx, ecx
add rcx, rdx
and rcx, r8
cmp dword [r9 + rcx*8], ebx
je 0x18006fd39
lea ecx, [rax - 1]
and eax, ecx
jne 0x18006fd00
movdqa xmm0, xmmword [0x180143d90]
pcmpeqb xmm0, xmm1
pmovmskb eax, xmm0
test eax, eax
jne 0x18006fd60
add r10, 0x10
add rdx, r10
and rdx, r8
jmp 0x18006fce0
lea rdx, [rcx + r11]
lea rax, [r11 + r8]
cmp rdx, rax
je 0x18006fd60
mov edx, dword [r9 + rcx*8 + 4]
mov rcx, r12
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockShared]
jmp 0x18006ff2d
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockShared]
movabs r14, 0x100000001b3
mov r12d, 0x1601
jmp 0x18006fd7d
xor esi, esi
mov rcx, qword [r15 + 0x28]
mov r8b, 1
mov edx, ebx
mov rax, qword [rcx]
call qword [rax + 0x30]
test rax, rax
je 0x18006ff62
movzx ecx, word [rax + 2]
cmp cx, r12w
je 0x18006fdad
mov edx, 0x1602
cmp cx, dx
jne 0x18006ff6b
mov ecx, dword [rax + 8]
mov edx, ebx
mov rax, qword [rsp + 0x30]
mov dword [rax], ecx
mov rcx, qword [r15 + 0x28]
mov rax, qword [rcx]
call qword [rax + 0x60]
test eax, eax
jne 0x18006fdda
mov rdx, r13
mov rcx, r15
call fcn.1800740a0
test eax, eax
je 0x18006ff6b
mov rax, qword [r15 + 0x10]
test byte [rax + 0x35a], 8
je 0x18006ff33
mov rbp, qword [r15 + 0x28]
lea rcx, [rbp + 8]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov rax, qword [rsp + 0x30]
mov r11, rsi
mov rdi, qword [r15 + 0x28]
movzx ecx, bl
mov r12d, dword [rax]
movabs rax, 0xcbf29ce484222325
mov r10, qword [rdi + 0x88]
xor rcx, rax
movzx eax, byte [rsp + 0x81]
mov rsi, qword [rdi + 0x70]
imul rcx, r14
xor rcx, rax
movzx eax, byte [rsp + 0x82]
imul rcx, r14
xor rcx, rax
movzx eax, byte [rsp + 0x83]
imul rcx, r14
xor rcx, rax
movabs rax, 0xde5fb9d2630458e9
imul rcx, r14
mul rcx
lea r14, [rax + rdx]
movzx eax, r14b
mov rdx, r14
shr rdx, 7
and rdx, r10
and al, 0x7f
movsx eax, al
movd xmm2, eax
punpcklbw xmm2, xmm2
punpcklwd xmm2, xmm2
pshufd xmm2, xmm2, 0
nop dword [rax]
movdqu xmm1, xmmword [rsi + rdx]
movdqa xmm0, xmm1
pcmpeqb xmm0, xmm2
pmovmskb eax, xmm0
test eax, eax
je 0x18006fed4
mov r9, qword [rdi + 0x78]
nop dword [rax]
bsf ecx, eax
mov dword [rsp + 0x90], 0
movsxd r8, ecx
add r8, rdx
and r8, r10
cmp dword [r9 + r8*8], ebx
je 0x18006ff12
lea ecx, [rax - 1]
and eax, ecx
jne 0x18006feb0
movdqa xmm0, xmmword [0x180143d90]
pcmpeqb xmm0, xmm1
pmovmskb eax, xmm0
test eax, eax
jne 0x18006fef4
add r11, 0x10
add rdx, r11
and rdx, r10
jmp 0x18006fe90
mov rdx, r14
lea rcx, [rdi + 0x70]
call fcn.1800742a0
mov rdx, qword [rdi + 0x78]
mov r8, rax
mov dword [rdx + rax*8], ebx
mov dword [rdx + rax*8 + 4], 0
mov rdx, qword [rdi + 0x78]
lea rcx, [rbp + 8]
mov dword [rdx + r8*8 + 4], r12d
mov rax, qword [r15 + 0x28]
mov byte [rax + 0x68], 1
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r12d, 0x1601
lea rcx, [rsp + 0x20]
call fcn.180132880
test eax, eax
jne 0x18006fc07
mov eax, 1
mov rbx, qword [rsp + 0x88]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rcx, qword [r15 + 0x10]
call fcn.180043110
xor eax, eax
jmp 0x18006ff4a