Function at 0x140032ee0
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x20], rdi
push rbp
mov rbp, rsp
sub rsp, 0x50
mov rbx, qword [0x14089fed8]
mov esi, edx
movaps xmmword [rsp + 0x40], xmm6
mov edi, ecx
cmp byte [rbx + 0x4d51], 0
jne 0x140032f45
cmp byte [rbx + 0x4d52], 0
jne 0x140032f45
movsx r9d, word [rbx + 0x5ea8]
lea r8, str.Tooltip__02d
mov edx, reloc.WS2_32.dll_recv
lea rcx, [rbp - 0x20]
call fcn.14002b340
test dil, 2
je 0x14003307e
jmp 0x140032fdd
movss xmm1, dword [rbx + 0x39c4]
lea r8, str.Tooltip__02d
movaps xmm0, xmm1
lea rcx, [rbp - 0x20]
mulss xmm0, dword [0x140372e04]
xor eax, eax
mov edx, reloc.WS2_32.dll_recv
mulss xmm1, dword [0x140372df8]
addss xmm0, dword [rbx + 0xe48]
addss xmm1, dword [rbx + 0xe4c]
or dword [rbx + 0x4a18], 1
mov qword [rbx + 0x4a30], rax
movss dword [rbx + 0x4a28], xmm0
mov dword [rbx + 0x4a1c], 1
movss dword [rbx + 0x4a2c], xmm1
movss xmm0, dword [rbx + 0x3a2c]
mov rax, qword [0x14089fed8]
mulss xmm0, dword [0x140372d94]
or dword [rax + 0x4a18], 0x40
movss dword [rax + 0x4a78], xmm0
movsx r9d, word [rbx + 0x5ea8]
call fcn.14002b340
movzx r9d, byte [rbp - 0x20]
lea r8, [rbp - 0x1f]
mov r10d, 0xffffffff
mov ecx, r10d
test r9b, r9b
je 0x140033030
lea r11, [0x14036e610]
nop dword [rax + rax]
cmp r9b, 0x23
jne 0x140033013
cmp byte [r8], r9b
jne 0x140033013
cmp byte [r8 + 1], r9b
cmove ecx, r10d
movzx edx, cl
movzx eax, r9b
movzx r9d, byte [r8]
xor rdx, rax
shr ecx, 8
inc r8
xor ecx, dword [r11 + rdx*4]
test r9b, r9b
jne 0x140033000
not ecx
call fcn.14002d850
test rax, rax
je 0x14003307e
cmp byte [rax + 0xbe], 0
je 0x14003307e
mov byte [rax + 0xc3], 1
lea r8, str.Tooltip__02d
mov byte [rax + 0xc5], 1
lea rcx, [rbp - 0x20]
mov byte [rax + 0xe4], 1
mov edx, reloc.WS2_32.dll_recv
inc word [rbx + 0x5ea8]
movsx r9d, word [rbx + 0x5ea8]
call fcn.14002b340
mov rbx, qword [0x14089fed8]
lea rdx, [rbp - 0x30]
mov dword [rbp - 0x30], 3
movss xmm0, dword [rbx + 0x3900]
lea rcx, [rbx + 0x4aa0]
movss dword [rbp - 0x2c], xmm0
call fcn.140049400
lea rdx, [rbp + 0x20]
mov dword [rbx + 0x3900], 0x41000000
mov ecx, 2
mov dword [rbp + 0x20], 0x41200000
mov dword [rbp + 0x24], 0x41200000
call fcn.1400232b0
lea rdx, [rbp + 0x20]
mov dword [rbp + 0x20], 0x41200000
mov ecx, recv
mov dword [rbp + 0x24], 0x41200000
call fcn.1400232b0
movss xmm1, dword [0x14089ff14]
lea rcx, [rbp - 0x30]
movss xmm0, dword [0x14089ff10]
mov rax, qword [0x14089fed8]
movss dword [rbp - 0x2c], xmm1
movss dword [rbp - 0x30], xmm0
movss xmm0, dword [0x14089ff18]
movss xmm1, dword [rax + 0x38f0]
mulss xmm1, dword [0x140372da0]
movss dword [rbp - 0x28], xmm0
mulss xmm1, dword [0x14089ff1c]
movss dword [rbp - 0x24], xmm1
call fcn.140027050
mov edx, eax
mov ecx, 4
call fcn.140023060
movss xmm1, dword [0x14089ff04]
lea rcx, [rbp - 0x30]
movss xmm0, dword [0x14089ff00]
mov rax, qword [0x14089fed8]
movss dword [rbp - 0x2c], xmm1
movss dword [rbp - 0x30], xmm0
movss xmm0, dword [0x14089ff08]
movss xmm1, dword [rax + 0x38f0]
mulss xmm1, dword [0x140372d7c]
movss dword [rbp - 0x28], xmm0
mulss xmm1, dword [0x14089ff0c]
movss dword [rbp - 0x24], xmm1
call fcn.140027050
mov edx, eax
mov ecx, gethostname
call fcn.140023060
movss xmm1, dword [0x1408a00d4]
lea rcx, [rbp - 0x30]
movss xmm0, dword [0x1408a00d0]
mov rax, qword [0x14089fed8]
movss dword [rbp - 0x2c], xmm1
movss xmm1, dword [0x1408a00dc]
movss dword [rbp - 0x30], xmm0
mulss xmm1, dword [rax + 0x38f0]
movss xmm0, dword [0x1408a00d8]
movss dword [rbp - 0x28], xmm0
movss dword [rbp - 0x24], xmm1
call fcn.140027050
mov edx, eax
xor ecx, ecx
call fcn.140023060
or esi, 0x2030347
lea rcx, [rbp - 0x20]
mov r8d, esi
xor edx, edx
call fcn.14001f570
mov rcx, qword [0x14089fef8]
call fcn.140022ed0
movss xmm0, dword [0x14089ff00]
movss xmm1, dword [0x14089ff04]
mov rax, qword [0x14089fed8]
movss dword [rbp - 0x30], xmm0
movss xmm0, dword [0x14089ff08]
movss dword [rbp - 0x2c], xmm1
movss xmm1, dword [0x14089ff0c]
movss dword [rbp - 0x28], xmm0
mulss xmm1, dword [rax + 0x38f0]
lea rcx, [rbp - 0x30]
movss dword [rbp - 0x24], xmm1
call fcn.140027050
movss xmm6, dword [0x140372d54]
lea rdx, [0x140370560]
xorps xmm3, xmm3
movzx ecx, al
xorps xmm0, xmm0
xorps xmm1, xmm1
xorps xmm2, xmm2
cvtsi2ss xmm3, rcx
mov ecx, eax
shr ecx, 8
movzx ecx, cl
mulss xmm3, xmm6
cvtsi2ss xmm0, rcx
mov ecx, eax
shr eax, 0x18
shr ecx, 0x10
movzx ecx, cl
shufps xmm3, xmm3, 0xe1
cvtsi2ss xmm2, rax
cvtsi2ss xmm1, rcx
lea rcx, [rbp - 0x30]
mulss xmm0, xmm6
mulss xmm1, xmm6
movss xmm3, xmm0
mulss xmm2, xmm6
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm1
shufps xmm3, xmm3, 0x27
movss xmm3, xmm2
shufps xmm3, xmm3, 0x39
movups xmmword [rbp - 0x30], xmm3
movups xmmword [rbp - 0x30], xmm3
call fcn.14007fe10
call fcn.140022fe0
movss xmm1, dword [0x140372e40]
xorps xmm0, xmm0
call fcn.140023ca0
movss xmm0, dword [0x1408a00b0]
lea rcx, [rbp - 0x30]
movss xmm1, dword [0x1408a00b4]
mov rax, qword [0x14089fed8]
movss dword [rbp - 0x30], xmm0
movss xmm0, dword [0x1408a00b8]
movss dword [rbp - 0x2c], xmm1
movss xmm1, dword [0x1408a00bc]
movss dword [rbp - 0x28], xmm0
mulss xmm1, dword [rax + 0x38f0]
movss dword [rbp - 0x24], xmm1
call fcn.140027050
xorps xmm3, xmm3
movzx ecx, al
xorps xmm0, xmm0
xorps xmm1, xmm1
xorps xmm2, xmm2
cvtsi2ss xmm3, rcx
mov ecx, eax
shr ecx, 8
movzx ecx, cl
mulss xmm3, xmm6
cvtsi2ss xmm0, rcx
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
shr eax, 0x18
shufps xmm3, xmm3, 0xe1
cvtsi2ss xmm1, rcx
mulss xmm0, xmm6
cvtsi2ss xmm2, rax
movss xmm3, xmm0
mulss xmm1, xmm6
shufps xmm3, xmm3, 0xc6
mulss xmm2, xmm6
movss xmm3, xmm1
shufps xmm3, xmm3, 0x27
movss xmm3, xmm2
shufps xmm3, xmm3, 0x39
movups xmmword [rbp - 0x30], xmm3
movups xmmword [rbp - 0x30], xmm3
lea rdx, str.Special_Features
lea rcx, [rbp - 0x30]
call fcn.14007fe10
mov rbx, qword [rsp + 0x60]
mov al, 1
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
movaps xmm6, xmmword [rsp + 0x40]
add rsp, 0x50
pop rbp
ret