Function at 0x1400356b0
Capabilities:
Hash data using fnv
Hash data with crc32

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
movaps xmmword [rsp + 0x40], xmm6
movaps xmmword [rsp + 0x30], xmm7
movaps xmm6, xmm3
movzx r15d, r8b
not edx
mov ebx, edx
movzx r10d, byte [rcx]
lea r9, [rcx + 1]
test r10b, r10b
je 0x14003571f
lea r8, [0x140154e90]
nop dword [rax]
cmp r10b, 0x23
jne 0x140035702
cmp byte [r9], r10b
jne 0x140035702
cmp byte [r9 + 1], r10b
cmove ebx, edx
movzx ecx, bl
movzx eax, r10b
xor rcx, rax
shr ebx, 8
xor ebx, dword [r8 + rcx*4]
movzx r10d, byte [r9]
inc r9
test r10b, r10b
jne 0x1400356f0
not ebx
mov dword [rsp + 0xa0], ebx
mov esi, ebx
shr esi, 0x18
mov ebp, ebx
shr ebp, 0x10
mov r14d, ebx
shr r14d, 8
mov ecx, 4
mov rax, qword gs:[0x58]
mov rax, qword [rax]
xor edi, edi
movss xmm7, dword [0x14021f7f0]
mov eax, dword [rcx + rax]
cmp dword [0x140249a14], eax
jle 0x140035827
lea rcx, [0x140249a14]
call fcn.1400c1d88
cmp dword [0x140249a14], 0xffffffff
jne 0x140035827
xorps xmm0, xmm0
movups xmmword [0x140249a20], xmm0
movups xmmword [0x140249a30], xmm0
movups xmmword [0x140249a40], xmm0
movups xmmword [0x140249a50], xmm0
mov dword [0x140249a20], edi
mov qword [0x140249a28], rdi
mov qword [0x140249a30], rdi
mov ecx, Ordinal_27
call fcn.1400c1e00
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [0x140249a28], rax
mov qword [0x140249a38], rdi
xorps xmm0, xmm0
movdqa xmmword [0x140249a40], xmm0
mov qword [0x140249a50], 7
mov qword [0x140249a58], 8
mov dword [0x140249a20], 0x3f800000
mov r8, rax
mov edx, reloc.WS2_32.dll_recv
lea rcx, [0x140249a38]
call fcn.1400028d0
nop
lea rcx, [0x1401289b0]
call fcn.1400c2064
nop
lea rcx, [0x140249a14]
call fcn.1400c1d1c
movzx edx, bl
movabs r13, 0xcbf29ce484222325
xor rdx, r13
movabs r12, 0x100000001b3
imul rdx, r12
movzx eax, r14b
xor rdx, rax
imul rdx, r12
movzx eax, bpl
xor rdx, rax
imul rdx, r12
mov eax, esi
xor rdx, rax
imul rdx, r12
and rdx, qword [0x140249a50]
add rdx, rdx
mov rax, qword [0x140249a38]
mov rcx, qword [rax + rdx*8 + 8]
mov r8, qword [0x140249a28]
cmp rcx, r8
je 0x1400358a0
mov rax, qword [rax + rdx*8]
cmp ebx, dword [rcx + 0x10]
je 0x1400358a3
nop
cmp rcx, rax
je 0x1400358a0
mov rcx, qword [rcx + 8]
cmp ebx, dword [rcx + 0x10]
jne 0x140035890
jmp 0x1400358a3
mov rcx, rdi
mov rax, r8
test rcx, rcx
cmovne rax, rcx
cmp rax, r8
jne 0x140035959
mov dword [rsp + 0x90], ebx
movss dword [rsp + 0x94], xmm6
lea r8, [rsp + 0x90]
lea rdx, [rsp + 0x20]
lea rcx, [0x140249a20]
call fcn.140002aa0
movzx edx, bl
xor rdx, r13
imul rdx, r12
movzx eax, byte [rsp + 0xa1]
xor rdx, rax
imul rdx, r12
movzx eax, byte [rsp + 0xa2]
xor rdx, rax
imul rdx, r12
movzx eax, byte [rsp + 0xa3]
xor rdx, rax
imul rdx, r12
and rdx, qword [0x140249a50]
add rdx, rdx
mov r8, qword [0x140249a38]
mov rcx, qword [r8 + rdx*8 + 8]
mov rax, qword [0x140249a28]
cmp rcx, rax
je 0x140035952
mov r8, qword [r8 + rdx*8]
cmp ebx, dword [rcx + 0x10]
je 0x14003594f
cmp rcx, r8
je 0x140035952
mov rcx, qword [rcx + 8]
cmp ebx, dword [rcx + 0x10]
jne 0x140035941
mov rdi, rcx
test rdi, rdi
cmovne rax, rdi
mov rcx, qword [0x140246cb0]
subss xmm7, dword [rcx + 0x18]
mulss xmm7, dword [rsp + 0xb8]
test r15b, r15b
je 0x14003597c
movss xmm6, dword [rsp + 0xb0]
subss xmm6, dword [rax + 0x14]
mulss xmm6, xmm7
addss xmm6, dword [rax + 0x14]
movss dword [rax + 0x14], xmm6
movaps xmm0, xmm6
mov rbx, qword [rsp + 0x98]
movaps xmm6, xmmword [rsp + 0x40]
movaps xmm7, xmmword [rsp + 0x30]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret