Function at 0x14012c2d0
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
push rbp
push rsi
push rdi
lea rbp, [rax - 0x28]
sub rsp, 0x110
movaps xmmword [rax - 0x28], xmm7
movaps xmmword [rax - 0x38], xmm8
mov rax, qword [0x14041d0c0]
xor rax, rsp
mov qword [rbp - 0x18], rax
mov rdi, r8
mov rbx, rdx
mov qword [rbp - 0x38], r8
mov qword [rbp - 0x30], r9
lea rcx, [0x1404b98c7]
call fcn.1402b13b0
mov rdx, rdi
lea rcx, [rsp + 0x40]
call fcn.140075890
mov r8, rax
lea rdx, [rsp + 0x20]
call fcn.14012c170
mov rdx, rbx
lea rcx, [rbp - 0x30]
call fcn.140114c80
mov rcx, qword [0x140491958]
lea rax, [rcx - 0x400001]
movabs rsi, 0x7fffffffffbffffe
xorps xmm7, xmm7
cmp rax, rsi
jbe 0x14012c367
xorps xmm0, xmm0
xorps xmm2, xmm2
xorps xmm3, xmm3
jmp 0x14012c3a5
mov rax, qword [0x140491bf8]
mov edx, dword [rax + 0x88]
add rdx, rcx
xor eax, eax
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x20], eax
mov r9d, recvfrom
lea r8, [rbp - 0x28]
mov rcx, qword [0x140491c08]
call fcn.14010b080
movss xmm0, dword [rbp - 0x28]
movss xmm2, dword [rbp - 0x24]
movss xmm3, dword [rbp - 0x20]
mov qword [rsp + 0x30], 0
movss xmm8, dword [rsp + 0x24]
cmp byte [0x140491941], 0
je 0x14012c3cd
comiss xmm7, xmm8
jb 0x14012c3cd
mulss xmm8, dword [0x1404202cc]
mov ecx, dword [0x1404919b8]
test ecx, ecx
je 0x14012c63d
sub ecx, 1
je 0x14012c516
sub ecx, 1
je 0x14012c46d
cmp ecx, 1
jne 0x14012c682
mov rax, qword [0x140491a60]
lea rcx, [rax - 0x400001]
cmp rcx, rsi
jbe 0x14012c40e
xorps xmm0, xmm0
jmp 0x14012c423
mov rcx, qword [0x140491bf8]
mov edx, dword [rcx + 0xa0]
add rdx, rax
call fcn.140117d00
divsd xmm0, qword [0x1403e87e0]
mulsd xmm0, qword [0x1403e8740]
addsd xmm0, qword [0x1403e8730]
cvtsd2ss xmm0, xmm0
movss xmm3, dword [rsp + 0x20]
mulss xmm3, xmm0
movaps xmm1, xmm0
mulss xmm1, xmm8
movss xmm2, dword [rsp + 0x28]
mulss xmm2, xmm0
unpcklps xmm3, xmm1
movsd qword [rsp + 0x30], xmm3
movd eax, xmm2
jmp 0x14012c67e
movss xmm1, dword [rbx + 4]
subss xmm1, xmm2
movss xmm2, dword [rbx]
subss xmm2, xmm0
movss xmm0, dword [rbx + 8]
subss xmm0, xmm3
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm0, xmm0
addss xmm2, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x14012c4ac
xorps xmm3, xmm3
sqrtss xmm3, xmm2
jmp 0x14012c4b7
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm3, xmm0
movd xmm1, dword [reloc.WS2_32.dll_recv]
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm3
jbe 0x14012c4dc
movss xmm3, dword [0x140420354]
movss xmm1, dword [0x140420360]
jmp 0x14012c64d
movd xmm0, dword [reloc.WLDAP32.dll_Ordinal_50]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm3
jbe 0x14012c501
movss xmm3, dword [0x140420350]
movss xmm1, dword [0x1404202fc]
jmp 0x14012c64d
movss xmm3, dword [0x140420370]
movss xmm1, dword [0x140420330]
jmp 0x14012c64d
mov rax, qword [0x140491a60]
lea rcx, [rax - 0x400001]
cmp rcx, rsi
jbe 0x14012c52e
xorps xmm0, xmm0
jmp 0x14012c543
mov rcx, qword [0x140491bf8]
mov edx, dword [rcx + 0xa0]
add rdx, rax
call fcn.140117d00
divsd xmm0, qword [0x1403e8798]
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_round]
mulsd xmm0, qword [0x1403e8798]
cvttsd2si ecx, xmm0
mov eax, reloc.WLDAP32.dll_Ordinal_200
mov edx, eax
cmp ecx, eax
cmovl edx, ecx
cmovl eax, ecx
cmp eax, 0xa
jge 0x14012c583
mov dword [rbp - 0x30], 0xa
mov dl, 0xa
xor al, al
xor r8b, r8b
xor ecx, ecx
jmp 0x14012c598
mov dword [rbp - 0x30], edx
mov eax, edx
shr eax, 8
mov r8d, edx
shr r8d, 0x10
mov ecx, edx
shr rcx, 0x18
movzx r9d, dl
movabs rdx, 0xcbf29ce484222325
xor r9, rdx
movabs rdx, 0x100000001b3
imul r9, rdx
movzx eax, al
xor r9, rax
imul r9, rdx
movzx eax, r8b
xor r9, rax
imul r9, rdx
xor r9, rcx
imul r9, rdx
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x28]
call fcn.140127140
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x14012c682
cmp rcx, qword [0x1404927b8]
je 0x14012c682
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x28]
call fcn.14012d8b0
mov rcx, qword [rax]
movss xmm3, dword [rcx + 0x14]
movss xmm2, dword [rcx + 0x18]
divss xmm3, dword [0x1403e88bc]
movaps xmm1, xmm3
mulss xmm1, dword [rsp + 0x20]
divss xmm2, dword [0x1403e88bc]
mulss xmm2, xmm8
unpcklps xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
jmp 0x14012c674
movss xmm3, dword [0x1404202f0]
movss xmm1, dword [0x14042032c]
divss xmm3, dword [0x1403e88bc]
divss xmm1, dword [0x1403e88bc]
movaps xmm2, xmm3
mulss xmm1, xmm8
mulss xmm2, dword [rsp + 0x20]
unpcklps xmm2, xmm1
movsd qword [rsp + 0x30], xmm2
mulss xmm3, dword [rsp + 0x28]
movd eax, xmm3
movd xmm7, eax
movss xmm0, dword [rsp + 0x30]
addss xmm0, dword [rbx]
movss dword [rbx], xmm0
movss xmm1, dword [rsp + 0x34]
addss xmm1, dword [rbx + 4]
movss dword [rbx + 4], xmm1
addss xmm7, dword [rbx + 8]
movss dword [rbx + 8], xmm7
lea rcx, [rdi + 0x60]
call fcn.14005f3e0
lea rcx, [rdi + 0x48]
call fcn.14005ec40
mov rax, rbx
mov rcx, qword [rbp - 0x18]
xor rcx, rsp
call fcn.1402aff00
lea r11, [rsp + 0x110]
mov rbx, qword [r11 + 0x20]
movaps xmm7, xmmword [r11 - 0x10]
movaps xmm8, xmmword [r11 - 0x20]
mov rsp, r11
pop rdi
pop rsi
pop rbp
ret