Function at 0x180154f10
Capabilities:
Hash data using fnv

Disassembly:
mov r9, r8
mov r8, rdx
mov rdx, rcx
jmp 0x180154f10
mov rax, rsp
mov qword [rax + 8], rcx
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0x90
mov qword [rbp + 0x1f], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rbx, r8
mov rdi, rdx
mov rdx, r9
lea rcx, [rbp - 0x39]
call fcn.18013a6c0
nop
call fcn.180133cd0
mov r9, rax
xor r12d, r12d
mov ecx, r12d
test rax, rax
setne cl
test ecx, ecx
jne 0x180154f75
mov ecx, 0x80004005
call fcn.180127e80
int3
mov rax, qword [rax]
mov rcx, r9
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x31], rax
lea rcx, [rbp - 0x31]
call fcn.18013a790
nop
mov rdx, rdi
lea rcx, [rbp - 0x29]
call fcn.18013a6c0
nop
mov rdx, rbx
lea rcx, [rbp - 0x21]
call fcn.18013a6c0
nop
or r14, 0xffffffffffffffff
mov qword [rbp - 0x19], r14
mov qword [rbp - 0x11], r12
mov dword [rbp - 9], r12d
lea rcx, [rbp - 0x29]
call fcn.180156a50
mov rcx, rax
call fcn.1801569a0
xor edx, edx
lea rcx, [rbp - 0x21]
call fcn.180153a60
nop
mov rax, qword [rbp - 0x39]
mov rdx, qword [rbp - 0x21]
cmp dword [rax - 0x10], 0
je 0x18015519b
mov rax, qword [rbp - 0x29]
cmp dword [rax - 0x10], 0
je 0x18015519b
cmp dword [rdx - 0x10], 0
je 0x18015519b
lea r13, [0x18026e2f0]
mov qword [rbp + 0x27], r13
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
nop
lea r8, [rbp - 0x29]
lea rdx, [rbp + 0x67]
lea rcx, [0x18026e2f8]
call fcn.180141610
mov rbx, qword [rbp + 0x67]
cmp rbx, qword [0x18026e2f8]
je 0x18015518e
lea rcx, [rbx + 0x18]
lea r8, [rbp - 0x21]
lea rdx, [rbp + 7]
call fcn.180156ec0
mov rdi, qword [rbp + 7]
cmp rdi, qword [rbx + 0x18]
je 0x18015518e
movabs rsi, 0xcbf29ce484222325
mov rcx, r12
mov rdx, qword [rbp - 0x39]
mov rax, r14
nop
inc rax
cmp byte [rdx + rax], cl
jne 0x180155070
test rax, rax
je 0x1801550af
movabs r8, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor rsi, rax
imul rsi, r8
inc rcx
mov rax, r14
inc rax
cmp byte [rdx + rax], 0
jne 0x1801550a1
cmp rcx, rax
jb 0x180155090
mov rax, rsi
shr rax, 0x20
xor rsi, rax
mov rcx, qword [rdi + 0x40]
and rsi, rcx
cmp qword [rdi + 0x48], rsi
ja 0x1801550d2
shr rcx, 1
mov rax, r14
sub rax, rcx
add rsi, rax
add rsi, rsi
mov rbx, qword [rdi + 0x28]
mov rbx, qword [rbx + rsi*8]
nop dword [rax]
mov rax, qword [rdi + 0x18]
mov rcx, qword [rdi + 0x28]
cmp qword [rcx + rsi*8], rax
je 0x1801550f6
mov rax, qword [rcx + rsi*8 + 8]
mov rax, qword [rax]
mov qword [rbp + 0xf], rax
cmp rbx, rax
je 0x180155171
mov eax, r12d
test rdx, rdx
setne al
test eax, eax
je 0x180155166
mov rcx, qword [rbx + 0x10]
call fcn.18017bdf4
test eax, eax
je 0x180155122
mov rbx, qword [rbx]
mov rdx, qword [rbp - 0x39]
jmp 0x1801550e0
mov rdx, qword [rbx + 0x10]
mov eax, r12d
test rdx, rdx
setne al
test eax, eax
jne 0x18015513e
mov ecx, 0x80004005
call fcn.180127e80
int3
mov rcx, qword [rbp - 0x39]
call fcn.18017bdf4
test eax, eax
je 0x180155159
mov rax, qword [rdi + 0x18]
mov qword [rbp + 0x17], rax
lea rdx, [rbp + 0x17]
jmp 0x180155161
mov qword [rbp - 1], rbx
lea rdx, [rbp - 1]
mov rdx, qword [rdx]
jmp 0x180155175
mov ecx, 0x80004005
call fcn.180127e80
int3
mov rdx, qword [rdi + 0x18]
cmp rdx, qword [rdi + 0x18]
je 0x18015518e
add rdx, 0x10
lea rcx, [rdi + 0x18]
call fcn.180156b40
mov r12d, 1
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rdx, qword [rbp - 0x21]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x1801551af
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
mov rdx, qword [rbp - 0x29]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x1801551c7
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
mov rdx, qword [rbp - 0x31]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x1801551df
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
mov rdx, qword [rbp - 0x39]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x1801551f8
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.WS2_32.dll_htonl + 8]
mov eax, r12d
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret