Function at 0x140026c70
Capabilities:
Hash data using fnv

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x28
mov rsi, rdx
cmp r9d, 0xffffffff
jne 0x140026c8d
mov r9d, dword [0x1406b5524]
mov r11d, r8d
shr r11d, 8
mov r10d, r8d
shr r10d, 0x10
mov edx, r8d
shr edx, 0x18
mov rax, qword [rcx + 0x50]
mov rcx, qword [rcx + 0x58]
sub rcx, rax
shr rcx, 3
imul ebx, ecx, 0xc28f5c29
xor ecx, ecx
cmp r9d, ebx
jge 0x140026d5c
movsxd rcx, r9d
imul rcx, rcx, 0xc8
movzx edi, r8b
movabs r14, 0xcbf29ce484222325
xor r14, rdi
movabs rdi, 0x100000001b3
imul r14, rdi
movzx r15d, r11b
xor r15, r14
imul r15, rdi
movzx r14d, r10b
xor r14, r15
imul r14, rdi
mov r15d, edx
xor r15, r14
imul r15, rdi
and r15, qword [rax + rcx + 0x58]
mov r14, qword [rax + rcx + 0x30]
mov r12, qword [rax + rcx + 0x40]
mov rdi, r15
shl rdi, 4
mov rdi, qword [r12 + rdi + 8]
cmp rdi, r14
je 0x140026d58
cmp dword [rdi + 0x10], r8d
je 0x140026d4f
add r15, r15
mov r15, qword [r12 + r15*8]
nop word [rax + rax]
cmp rdi, r15
je 0x140026d58
mov rdi, qword [rdi + 8]
cmp dword [rdi + 0x10], r8d
jne 0x140026d40
cmp rdi, r14
jne 0x140026ea4
mov ecx, dword [rax + rcx + 8]
cmp r9d, ecx
je 0x140026e08
cmp ecx, ebx
jge 0x140026e08
movsxd rdi, ecx
imul rdi, rdi, 0xc8
movzx ebx, r8b
movabs r14, 0xcbf29ce484222325
xor r14, rbx
movabs rbx, 0x100000001b3
imul r14, rbx
movzx r15d, r11b
xor r15, r14
imul r15, rbx
movzx r12d, r10b
xor r12, r15
imul r12, rbx
mov r14d, edx
xor r14, r12
imul r14, rbx
and r14, qword [rax + rdi + 0x58]
mov rbx, qword [rax + rdi + 0x30]
mov r15, qword [rax + rdi + 0x40]
mov rdi, r14
shl rdi, 4
mov rdi, qword [r15 + rdi + 8]
cmp rdi, rbx
je 0x140026e08
cmp dword [rdi + 0x10], r8d
je 0x140026dff
add r14, r14
mov r14, qword [r15 + r14*8]
nop word cs:[rax + rax]
cmp rdi, r14
je 0x140026e08
mov rdi, qword [rdi + 8]
cmp dword [rdi + 0x10], r8d
jne 0x140026df0
cmp rdi, rbx
jne 0x140026ea4
test r9d, r9d
je 0x140026ec7
test ecx, ecx
je 0x140026ec7
movzx ecx, r8b
movabs r9, 0xcbf29ce484222325
xor r9, rcx
movabs rcx, 0x100000001b3
imul r9, rcx
movzx r11d, r11b
xor r11, r9
imul r11, rcx
movzx r9d, r10b
xor r9, r11
imul r9, rcx
mov edx, edx
xor rdx, r9
imul rdx, rcx
and rdx, qword [rax + 0x58]
mov rcx, qword [rax + 0x30]
mov rax, qword [rax + 0x40]
mov r9, rdx
shl r9, 4
mov rdi, qword [rax + r9 + 8]
cmp rdi, rcx
je 0x140026ec7
cmp dword [rdi + 0x10], r8d
je 0x140026e9f
add rdx, rdx
mov rax, qword [rax + rdx*8]
nop word cs:[rax + rax]
cmp rdi, rax
je 0x140026ec7
mov rdi, qword [rdi + 8]
cmp dword [rdi + 0x10], r8d
jne 0x140026e90
cmp rdi, rcx
je 0x140026ec7
xorps xmm0, xmm0
movups xmmword [rsi + 0x10], xmm0
movups xmmword [rsi], xmm0
mov rbx, qword [rdi + 0x28]
cmp qword [rdi + 0x30], 0x10
jb 0x140026ee2
mov rdi, qword [rdi + 0x18]
test rbx, rbx
jns 0x140026eeb
call fcn.140005810
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], 0
mov qword [rsi + 0x18], reloc.WS2_32.dll_ntohs
jmp 0x140026f67
add rdi, 0x18
test rbx, rbx
js 0x140026ec2
cmp rbx, 0xf
ja 0x140026f05
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], reloc.WS2_32.dll_ntohs
movups xmm0, xmmword [rdi]
movups xmmword [rsi], xmm0
jmp 0x140026f67
mov qword [rsi + 0x18], reloc.WS2_32.dll_ntohs
mov rax, rbx
or rax, 0xf
cmp rax, 0x17
mov r14d, reloc.WS2_32.dll_shutdown
cmovae r14, rax
cmp r14, 0xfff
jb 0x140026f42
lea rcx, [r14 + 0x28]
call fcn.14016e094
lea rcx, [rax + 0x27]
and rcx, 0xffffffffffffffe0
mov qword [rcx - 8], rax
jmp 0x140026f4e
lea rcx, [r14 + 1]
call fcn.14016e094
mov rcx, rax
mov qword [rsi], rcx
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], r14
inc rbx
mov rdx, rdi
mov r8, rbx
call fcn.14033b0d0
mov rax, rsi
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret