Function at 0x14005ed10
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x30
mov rbp, rcx
mov r8, qword [0x1401885c0]
imul r9d, dword [rcx + 0x30], 0x64
add r9d, dword [rcx + 0x2c]
mov r10d, r9d
movzx edx, r9b
movabs r12, 0xcbf29ce484222325
xor rdx, r12
movabs r15, 0x100000001b3
imul rdx, r15
mov eax, r9d
shr eax, 8
movzx ecx, al
xor rdx, rcx
imul rdx, r15
mov eax, r9d
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r15
mov eax, r9d
shr rax, 0x18
xor rdx, rax
imul rdx, r15
mov rcx, qword [r8 + 0x60f8]
and rcx, rdx
add rcx, rcx
mov rax, qword [r8 + 0x60e0]
mov rbx, qword [rax + rcx*8 + 8]
mov rdx, qword [r8 + 0x60d0]
xor edi, edi
cmp rbx, rdx
je 0x14005edd1
mov rax, qword [rax + rcx*8]
cmp r10d, dword [rbx + 0x10]
je 0x14005edd4
nop word [rax + rax]
cmp rbx, rax
je 0x14005edd1
mov rbx, qword [rbx + 8]
cmp r9d, dword [rbx + 0x10]
jne 0x14005edc0
jmp 0x14005edd4
mov rbx, rdi
test rbx, rbx
cmove rbx, rdx
mov r8d, dword [rbp + 0x14]
cmp r8d, 0x12
jne 0x14005edff
xor al, al
cmp word [rbx + 0x18], di
je 0x14005edf6
mov word [rbx + 0x18], di
jmp 0x14005f0ff
mov word [rbx + 0x1a], di
jmp 0x14005f0ff
mov eax, r8d
shr eax, 8
movzx edx, al
movzx eax, r8b
xor rax, r12
imul rax, r15
xor rdx, rax
imul rdx, r15
mov eax, r8d
shr eax, 0x10
movzx ecx, al
xor rcx, rdx
imul rcx, r15
mov rax, r8
shr rax, 0x18
xor rcx, rax
imul rcx, r15
and rcx, qword [0x140188e90]
shl rcx, 4
add rcx, qword [0x140188e78]
mov rax, qword [rcx + 8]
mov r14, qword [0x140188e68]
cmp rax, r14
je 0x14005ee74
mov rcx, qword [rcx]
cmp r8d, dword [rax + 0x10]
je 0x14005ee77
cmp rax, rcx
je 0x14005ee74
mov rax, qword [rax + 8]
cmp r8d, dword [rax + 0x10]
jne 0x14005ee63
jmp 0x14005ee77
mov rax, rdi
test rax, rax
cmovne r14, rax
movzx eax, byte [r14 + 0x1e]
cmp al, 0x12
jne 0x14005ee94
movzx eax, word [rbp + 0x14]
mov word [rbx + 0x1a], ax
jmp 0x14005ef7a
cmp al, 0x13
jne 0x14005ef72
mov ecx, Ordinal_26
call fcn.1400f807c
mov rsi, rax
mov qword [rsp + 0x20], rax
test rax, rax
je 0x14005eed2
movsxd rax, dword [r14 + 0x134]
mov dword [rsi], edi
mov byte [rsi + 4], dil
mov qword [rsi + 8], rax
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov qword [rsi + 0x10], rax
jmp 0x14005eed5
mov rsi, rdi
movzx eax, byte [rbp + 3]
mov byte [rsi + 4], al
movzx eax, word [rbp + 0x14]
mov word [rbx + 0x18], ax
mov qword [rsp + 0x20], rsi
mov ecx, Ordinal_26
call fcn.1400f807c
mov r14, rax
mov qword [rsp + 0x28], rax
test rax, rax
je 0x14005ef24
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rax, vtable.std::_Ref_count_struct_SeedData_.0
mov qword [r14], rax
mov qword [r14 + 0x10], rsi
jmp 0x14005ef27
mov r14, rdi
mov edx, Ordinal_26
xor ecx, ecx
call fcn.1400f80b8
mov qword [rbx + 0x20], rsi
mov rsi, qword [rbx + 0x28]
mov qword [rbx + 0x28], r14
test rsi, rsi
je 0x14005ef7a
mov ebx, 0xffffffff
mov eax, ebx
lock xadd dword [rsi + 8], eax
cmp eax, 1
jne 0x14005ef7a
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax]
lock xadd dword [rsi + 0xc], ebx
cmp ebx, 1
jne 0x14005ef7a
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WS2_32.dll_htonl]
jmp 0x14005ef7a
movzx eax, word [rbp + 0x14]
mov word [rbx + 0x18], ax
mov r10, qword [0x1401885c0]
mov eax, dword [r10 + 0x5f28]
cmp dword [rbp + 4], eax
jne 0x14005f0fd
mov r8d, dword [rbp + 0x14]
movzx edx, r8b
xor rdx, r12
imul rdx, r15
mov eax, r8d
shr eax, 8
movzx ecx, al
xor rdx, rcx
imul rdx, r15
mov eax, r8d
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r15
mov eax, r8d
shr rax, 0x18
xor rdx, rax
imul rdx, r15
mov r11, qword [r10 + 0x5f90]
mov rcx, r11
and rcx, rdx
mov rbx, qword [r10 + 0x5f78]
add rcx, rcx
mov rax, qword [rbx + rcx*8 + 8]
mov r9, qword [r10 + 0x5f68]
cmp rax, r9
je 0x14005f011
mov rcx, qword [rbx + rcx*8]
cmp r8d, dword [rax + 0x10]
je 0x14005f014
cmp rax, rcx
je 0x14005f011
mov rax, qword [rax + 8]
cmp r8d, dword [rax + 0x10]
jne 0x14005f000
jmp 0x14005f014
mov rax, rdi
test rax, rax
cmove rax, r9
cmp rax, r9
je 0x14005f0fd
movzx ecx, byte [rax + 0x16]
cmp cl, 1
jbe 0x14005f037
dec cl
mov byte [rax + 0x16], cl
jmp 0x14005f0fd
movzx edx, r8b
xor rdx, r12
imul rdx, r15
mov eax, r8d
shr eax, 8
movzx ecx, al
xor rdx, rcx
imul rdx, r15
mov eax, r8d
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r15
mov rax, r8
shr rax, 0x18
xor rdx, rax
imul rdx, r15
and r11, rdx
add r11, r11
mov rdx, qword [rbx + r11*8 + 8]
mov rax, rdx
cmp rdx, r9
je 0x14005f0a2
mov rcx, qword [rbx + r11*8]
cmp r8d, dword [rdx + 0x10]
je 0x14005f09f
nop dword [rax]
cmp rax, rcx
je 0x14005f0a2
mov rax, qword [rax + 8]
cmp r8d, dword [rax + 0x10]
jne 0x14005f090
mov rdi, rax
test rdi, rdi
je 0x14005f0fd
mov rax, qword [rbx + r11*8]
cmp rdx, rdi
jne 0x14005f0cb
cmp rax, rdi
jne 0x14005f0c0
mov qword [rbx + r11*8], r9
mov qword [rbx + r11*8 + 8], r9
jmp 0x14005f0d7
mov r9, qword [rdi + 8]
mov qword [rbx + r11*8 + 8], r9
jmp 0x14005f0d7
cmp rax, rdi
jne 0x14005f0d7
mov rax, qword [rdi]
mov qword [rbx + r11*8], rax
mov r8, qword [rdi]
dec qword [r10 + 0x5f70]
mov rax, qword [rdi + 8]
mov qword [rax], r8
mov rax, qword [rdi + 8]
mov qword [r8 + 8], rax
mov edx, Ordinal_26
mov rcx, rdi
call fcn.1400f80b8
xor al, al
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret