Function at 0x14002a760
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x78]
sub rsp, 0x150
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x140132100]
xor rax, rsp
mov qword [rbp - 0x60], rax
mov rbx, rdx
mov r15, rcx
mov r13, qword [0x14017fb30]
mov rax, qword [r13 + 0x1ba0]
mov byte [rax + 0x91], 1
mov r12, qword [r13 + 0x1ba0]
cmp byte [r12 + 0x94], 0
jne 0x14002b06e
mov rdx, rcx
mov rcx, r12
call fcn.140006150
mov esi, eax
mov dword [rsp + 0x60], esi
xor edi, edi
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], r15
xorps xmm9, xmm9
movss dword [rsp + 0x20], xmm9
movss xmm3, dword [0x14011b9bc]
mov rcx, qword [0x14017fca0]
movss xmm2, dword [rcx + 0x14]
lea rdx, [rsp + 0x78]
call fcn.140026cd0
movss xmm6, dword [r12 + 0xd8]
movss xmm7, dword [r12 + 0xdc]
movss xmm8, dword [r13 + 0x15bc]
movss xmm2, dword [r13 + 0x15b8]
movaps xmm3, xmm8
addss xmm3, xmm8
addss xmm3, dword [rsp + 0x7c]
addss xmm2, xmm2
addss xmm2, dword [rsp + 0x78]
mov rdx, qword [rbx]
lea rcx, [rsp + 0x58]
call fcn.14000f8c0
movss xmm2, dword [rsp + 0x5c]
addss xmm2, xmm7
movss xmm0, dword [rsp + 0x58]
addss xmm0, xmm6
movss dword [rbp - 0x70], xmm6
movss dword [rbp - 0x6c], xmm7
movss dword [rbp - 0x68], xmm0
movss dword [rbp - 0x64], xmm2
movaps xmm1, xmm8
lea rcx, [rsp + 0x58]
call fcn.14000f4a0
mov edx, esi
lea rcx, [rbp - 0x70]
call fcn.14000f5f0
test al, al
je 0x14002b06e
mov dword [rsp + 0x20], edi
lea r9, [rsp + 0x52]
lea r8, [rsp + 0x51]
mov edx, esi
lea rcx, [rbp - 0x70]
call fcn.140029f70
mov byte [rsp + 0x50], al
mov r14d, 4
mov rcx, qword gs:[0x58]
mov rbx, qword [rcx]
movss xmm6, dword [0x14011b8b4]
mov ecx, dword [r14 + rbx]
cmp dword [0x140180158], ecx
jle 0x14002a9e3
lea rcx, [0x140180158]
call fcn.1400b5cc8
cmp dword [0x140180158], 0xffffffff
jne 0x14002a9e3
xorps xmm0, xmm0
movups xmmword [0x140180110], xmm0
movups xmmword [0x140180120], xmm0
movups xmmword [0x140180130], xmm0
movups xmmword [0x140180140], xmm0
mov dword [0x140180110], edi
mov qword [0x140180118], rdi
mov qword [0x140180120], rdi
lea ecx, [rdi + 0x18]
call fcn.1400b5970
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [0x140180118], rax
mov qword [0x140180128], rdi
xorps xmm0, xmm0
movdqa xmmword [0x140180130], xmm0
mov qword [0x140180140], 7
mov qword [0x140180148], 8
mov dword [0x140180110], 0x3f800000
mov r8, rax
lea edx, [rdi + 0x10]
lea rcx, [0x140180128]
call fcn.14002dbe0
nop
lea rcx, [0x1400e9fe0]
call fcn.1400b5bd4
nop
lea rcx, [0x140180158]
call fcn.1400b5c5c
mov eax, dword [r14 + rbx]
cmp dword [0x14018015c], eax
jle 0x14002aac0
lea rcx, [0x14018015c]
call fcn.1400b5cc8
cmp dword [0x14018015c], 0xffffffff
jne 0x14002aac0
xorps xmm0, xmm0
movups xmmword [0x140180000], xmm0
movups xmmword [0x140180010], xmm0
movups xmmword [0x140180020], xmm0
movups xmmword [0x140180030], xmm0
mov dword [0x140180000], 0
mov qword [0x140180008], rdi
mov qword [0x140180010], rdi
mov ecx, Ordinal_27
call fcn.1400b5970
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [0x140180008], rax
mov qword [0x140180018], rdi
xorps xmm0, xmm0
movdqa xmmword [0x140180020], xmm0
mov qword [0x140180030], 7
mov qword [0x140180038], 8
mov dword [0x140180000], 0x3f800000
mov r8, rax
mov edx, reloc.WS2_32.dll_recv
lea rcx, [0x140180018]
call fcn.14002dbe0
nop
lea rcx, [0x1400e9fd0]
call fcn.1400b5bd4
nop
lea rcx, [0x14018015c]
call fcn.1400b5c5c
nop dword [rax + rax]
movzx r14d, sil
movabs rax, 0xcbf29ce484222325
xor r14, rax
movabs rcx, 0x100000001b3
imul r14, rcx
movzx eax, byte [rsp + 0x61]
xor r14, rax
imul r14, rcx
movzx eax, byte [rsp + 0x62]
xor r14, rax
imul r14, rcx
movzx eax, byte [rsp + 0x63]
xor r14, rax
imul r14, rcx
mov rcx, r14
and rcx, qword [0x140180140]
add rcx, rcx
mov rdx, qword [0x140180128]
mov rax, qword [rdx + rcx*8 + 8]
mov r9, qword [0x140180118]
cmp rax, r9
je 0x14002ab41
mov rcx, qword [rdx + rcx*8]
cmp esi, dword [rax + 0x10]
je 0x14002ab44
cmp rax, rcx
je 0x14002ab41
mov rax, qword [rax + 8]
cmp esi, dword [rax + 0x10]
jne 0x14002ab31
jmp 0x14002ab44
mov rax, rdi
mov rbx, r9
test rax, rax
cmovne rbx, rax
mov rcx, r14
and rcx, qword [0x140180030]
add rcx, rcx
mov rdx, qword [0x140180018]
mov rax, qword [rdx + rcx*8 + 8]
mov r8, qword [0x140180008]
cmp rax, r8
je 0x14002ab90
mov rdx, qword [rdx + rcx*8]
cmp esi, dword [rax + 0x10]
je 0x14002ab93
nop dword [rax]
cmp rax, rdx
je 0x14002ab90
mov rax, qword [rax + 8]
cmp esi, dword [rax + 0x10]
jne 0x14002ab80
jmp 0x14002ab93
mov rax, rdi
mov rdi, r8
test rax, rax
cmovne rdi, rax
cmp rbx, r9
jne 0x14002ac11
mov dword [rsp + 0x58], esi
mov dword [rsp + 0x5c], 0x3f800000
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x80]
lea rcx, [0x140180110]
call fcn.14002dd20
mov rcx, r14
and rcx, qword [0x140180140]
add rcx, rcx
mov rdx, qword [0x140180128]
mov rax, qword [rdx + rcx*8 + 8]
mov rbx, qword [0x140180118]
cmp rax, rbx
je 0x14002ac01
mov rdx, qword [rdx + rcx*8]
cmp esi, dword [rax + 0x10]
je 0x14002ac03
cmp rax, rdx
je 0x14002ac01
mov rax, qword [rax + 8]
cmp esi, dword [rax + 0x10]
jne 0x14002abf1
jmp 0x14002ac03
xor eax, eax
test rax, rax
cmovne rbx, rax
mov r8, qword [0x140180008]
cmp rdi, r8
jne 0x14002ac7b
mov dword [rsp + 0x58], esi
mov dword [rsp + 0x5c], 0
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x80]
lea rcx, [0x140180000]
call fcn.14002dd20
and r14, qword [0x140180030]
add r14, r14
mov rcx, qword [0x140180018]
mov rax, qword [rcx + r14*8 + 8]
mov rdi, qword [0x140180008]
cmp rax, rdi
je 0x14002ac72
mov rcx, qword [rcx + r14*8]
cmp esi, dword [rax + 0x10]
je 0x14002ac74
cmp rax, rcx
je 0x14002ac72
mov rax, qword [rax + 8]
cmp esi, dword [rax + 0x10]
jne 0x14002ac62
jmp 0x14002ac74
xor eax, eax
test rax, rax
cmovne rdi, rax
movzx esi, byte [rsp + 0x50]
test sil, sil
je 0x14002ac8b
movaps xmm0, xmm9
jmp 0x14002aca3
movss xmm0, dword [r13 + 0x18]
mulss xmm0, dword [0x14011b8cc]
addss xmm0, dword [rbx + 0x14]
movss dword [rbx + 0x14], xmm0
movss dword [rbx + 0x14], xmm0
comiss xmm9, xmm0
jbe 0x14002acb4
movaps xmm1, xmm9
jmp 0x14002acbb
movaps xmm1, xmm6
minss xmm1, xmm0
movss dword [rbx + 0x14], xmm1
movaps xmm8, xmm6
subss xmm8, xmm1
movss xmm2, dword [0x14011b8e0]
mulss xmm8, xmm2
movss xmm0, dword [r13 + 0x18]
movzx eax, byte [rsp + 0x51]
test al, al
jne 0x14002acec
xorps xmm0, xmmword [0x14011bbb0]
mulss xmm0, xmm2
addss xmm0, dword [rdi + 0x14]
comiss xmm9, xmm0
jbe 0x14002ad01
movaps xmm6, xmm9
jmp 0x14002ad05
minss xmm6, xmm0
movss dword [rdi + 0x14], xmm6
movups xmm4, xmmword [r13 + 0x17ec]
movups xmm3, xmmword [r13 + 0x17fc]
cmp byte [rsp + 0x52], 0
je 0x14002ad4c
test al, al
je 0x14002ad4c
mov rax, qword [0x14017fb30]
movups xmm0, xmmword [rax + 0x180c]
movups xmmword [rsp + 0x68], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x1570]
movss dword [rsp + 0x74], xmm0
jmp 0x14002adb7
movaps xmm2, xmm3
subss xmm2, xmm4
mulss xmm2, xmm6
addss xmm2, xmm4
movaps xmm1, xmm3
shufps xmm1, xmm3, 0x55
movaps xmm0, xmm4
shufps xmm0, xmm4, 0x55
subss xmm1, xmm0
mulss xmm1, xmm6
addss xmm1, xmm0
shufps xmm3, xmm3, 0xaa
movaps xmm0, xmm4
shufps xmm0, xmm4, 0xaa
subss xmm3, xmm0
mulss xmm3, xmm6
addss xmm3, xmm0
movss dword [rsp + 0x68], xmm2
movss dword [rsp + 0x6c], xmm1
movss dword [rsp + 0x70], xmm3
shufps xmm4, xmm4, 0xff
mov rax, qword [0x14017fb30]
mulss xmm4, dword [rax + 0x1570]
movss dword [rsp + 0x74], xmm4
lea rcx, [rsp + 0x68]
call fcn.140004860
mov ebx, eax
mov rcx, qword [r12 + 0x268]
mov rax, qword [rcx + 0x38]
movss xmm1, dword [rax + 0x28]
movss xmm2, dword [rax + 0x20]
xor r9d, r9d
movss xmm0, dword [rax + 0x24]
unpcklps xmm0, xmm1
movq r8, xmm0
movss xmm1, dword [rax + 0x1c]
unpcklps xmm1, xmm2
movq rdx, xmm1
call fcn.14001e680
mov qword [rsp + 0x58], 0
mov rax, qword [0x14017fb30]
movups xmm0, xmmword [rax + 0x17ec]
movups xmmword [rbp - 0x80], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x1570]
movss dword [rbp - 0x74], xmm0
movss xmm12, dword [rbp - 0x68]
subss xmm12, xmm8
movss dword [rsp + 0x60], xmm12
movss xmm13, dword [rbp - 0x64]
subss xmm13, xmm8
movss dword [rsp + 0x64], xmm13
movaps xmm14, xmm8
movss xmm10, dword [rbp - 0x70]
addss xmm14, xmm10
movss dword [rsp + 0x68], xmm14
movaps xmm15, xmm8
movss xmm11, dword [rbp - 0x6c]
addss xmm15, xmm11
movss dword [rsp + 0x6c], xmm15
movss xmm6, dword [r13 + 0x15c0]
addss xmm6, xmm6
movss xmm7, dword [rdi + 0x14]
mulss xmm7, dword [0x14011b93c]
addss xmm7, dword [0x14011b928]
lea rcx, [rbp - 0x80]
call fcn.140004860
mov r9d, eax
movss dword [rsp + 0x38], xmm6
xor edi, edi
mov dword [rsp + 0x30], edi
lea rax, [rsp + 0x58]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm7
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x68]
mov rcx, qword [r12 + 0x268]
call fcn.140020ec0
mov rcx, qword [r12 + 0x268]
mov eax, dword [rcx + 0x58]
sub eax, 1
mov dword [rcx + 0x58], eax
jne 0x14002aef5
mov rax, qword [rcx + 0x38]
add rax, 0x1c
jmp 0x14002af01
dec eax
cdqe
shl rax, 4
add rax, qword [rcx + 0x60]
movups xmm0, xmmword [rax]
movups xmmword [rcx + 0x88], xmm0
call fcn.14001e530
movss dword [rsp + 0x68], xmm12
movss dword [rsp + 0x6c], xmm13
movss dword [rsp + 0x58], xmm14
movss dword [rsp + 0x5c], xmm15
mov dword [rsp + 0x28], edi
movss xmm0, dword [r13 + 0x15c0]
movss dword [rsp + 0x20], xmm0
mov r9d, ebx
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x58]
mov rcx, qword [r12 + 0x268]
call fcn.140020930
mov r10, qword [r12 + 0x268]
mov rax, qword [0x14017fb30]
movups xmm0, xmmword [rax + 0x164c]
movups xmmword [rbp - 0x80], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x1570]
movss dword [rbp - 0x74], xmm0
lea rcx, [rbp - 0x80]
call fcn.140004860
mov r9d, eax
addss xmm10, dword [rbp - 0x68]
movss xmm0, dword [0x14011b880]
mulss xmm10, xmm0
movss xmm1, dword [rsp + 0x78]
mulss xmm1, xmm0
subss xmm10, xmm1
addss xmm11, dword [rbp - 0x64]
mulss xmm11, xmm0
movss xmm1, dword [rsp + 0x7c]
mulss xmm1, xmm0
subss xmm11, xmm1
mulss xmm8, dword [0x14011b860]
mov rcx, qword [0x14017fca0]
movss xmm2, dword [rcx + 0x14]
subss xmm2, xmm8
test eax, 0xff000000
je 0x14002b068
mov r8, 0xffffffffffffffff
inc r8
cmp byte [r15 + r8], dil
jne 0x14002aff4
add r8, r15
cmp r15, r8
je 0x14002b068
test rcx, rcx
jne 0x14002b012
mov rax, qword [r10 + 0x38]
mov rcx, qword [rax + 8]
ucomiss xmm2, xmm9
jp 0x14002b023
jne 0x14002b023
mov rax, qword [r10 + 0x38]
movss xmm2, dword [rax + 0x10]
movups xmm0, xmmword [r10 + 0x88]
movups xmmword [rbp - 0x80], xmm0
mov byte [rsp + 0x48], dil
movss dword [rsp + 0x40], xmm9
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x30], r15
lea rax, [rbp - 0x80]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r9d
movaps xmm0, xmm10
unpcklps xmm0, xmm11
movq r9, xmm0
mov rdx, r10
call fcn.140026ef0
movzx eax, sil
jmp 0x14002b070
xor al, al
mov rcx, qword [rbp - 0x60]
xor rcx, rsp
call fcn.1400b5950
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret