Function at 0x1400103e0
Capabilities:
Hash data with crc32

Disassembly:
test r8d, r8d
jle 0x140010650
mov r11, rsp
push rbp
push rsi
sub rsp, 0x58
mov rax, qword [0x1401503a8]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov qword [r11 - 0x18], rdi
mov rbp, rcx
mov qword [r11 - 0x20], r14
lea rdi, [rdx + 0x18]
mov qword [r11 - 0x28], r15
mov r14d, 0xffffffff
lea r15, [0x1400e82b0]
mov qword [r11 + 0x18], rbx
movsxd rsi, r8d
nop dword [rax + rax]
mov edx, dword [rdi - 0x18]
test edx, edx
je 0x140010618
mov rcx, rbp
call fcn.140010350
mov edx, dword [rdi - 0x14]
mov rbx, rax
test edx, edx
je 0x14001045e
lea rcx, [rbp + 0x5528]
call fcn.14001b750
mov rcx, rax
jmp 0x140010460
xor ecx, ecx
mov qword [rbx + 0x18], rcx
movsx eax, word [rdi]
movd xmm1, eax
movsx eax, word [rdi + 2]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
movss dword [rbx + 0x48], xmm1
cvtdq2ps xmm0, xmm0
movss dword [rbx + 0x4c], xmm0
movsx eax, word [rdi + 4]
movd xmm1, eax
movsx eax, word [rdi + 6]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
movss dword [rbx + 0x50], xmm1
cvtdq2ps xmm0, xmm0
movss dword [rbx + 0x54], xmm0
movsx eax, word [rdi + 8]
movd xmm1, eax
movsx eax, word [rdi + 0xa]
and dword [rbx + 0xc4], 0xfffffe49
or dword [rbx + 0xc4], 0x49
cvtdq2ps xmm1, xmm1
movd xmm0, eax
movss dword [rbx + 0x58], xmm1
cvtdq2ps xmm0, xmm0
movss dword [rbx + 0x5c], xmm0
test rcx, rcx
je 0x1400104f1
cmp qword [rcx + 0x20], 0
jne 0x1400104e6
mov qword [rcx + 0x20], rbx
jmp 0x1400104f1
cmp qword [rcx + 0x28], 0
jne 0x1400104f1
mov qword [rcx + 0x28], rbx
mov eax, dword [rdi - 0xc]
mov dword [rbx + 0xbc], eax
movsx eax, byte [rdi - 8]
mov dword [rbx + 0x60], eax
mov ecx, dword [rdi - 4]
mov eax, dword [rbx + 0xc]
and ecx, 0xc1fc20
or eax, dword [rbx + 4]
or eax, ecx
mov dword [rbx + 8], ecx
mov dword [rbx + 0x10], eax
mov rcx, rbx
mov rax, qword [rbx + 0x18]
test rax, rax
je 0x140010530
mov rcx, rax
mov rax, qword [rax + 0x18]
test rax, rax
jne 0x140010524
mov r9d, dword [rcx]
lea r8, str.DockNode__02X
lea rcx, [rsp + 0x20]
mov edx, reloc.WS2_32.dll_sendto
call fcn.14001baa0
movzx r9d, byte [rsp + 0x20]
lea r8, [rsp + 0x21]
mov edx, r14d
test r9b, r9b
je 0x140010590
nop dword [rax]
cmp r9b, 0x23
jne 0x140010573
cmp byte [r8], r9b
jne 0x140010573
cmp byte [r8 + 1], r9b
cmove edx, r14d
movzx ecx, dl
movzx eax, r9b
movzx r9d, byte [r8]
xor rcx, rax
shr edx, 8
inc r8
xor edx, dword [r15 + rcx*4]
test r9b, r9b
jne 0x140010560
mov r11, qword [0x140150bc8]
not edx
movsxd rax, dword [r11 + 0x3fa8]
mov r9, qword [r11 + 0x3fb0]
mov r10, rax
mov r8, rax
mov rcx, r9
test eax, eax
je 0x1400105f8
nop dword [rax]
nop dword [rax + rax]
mov rcx, r8
shr rcx, 1
mov rax, rcx
add rax, rax
cmp dword [r9 + rax*8], edx
jae 0x1400105e9
lea r9, [r9 + rax*8]
mov rax, 0xffffffffffffffff
sub rax, rcx
add r9, 0x10
add r8, rax
jmp 0x1400105ec
mov r8, rcx
test r8, r8
jne 0x1400105c0
mov rcx, qword [r11 + 0x3fb0]
shl r10, 4
add r10, rcx
cmp r9, r10
je 0x14001060f
cmp dword [r9], edx
jne 0x14001060f
mov rax, qword [r9 + 8]
jmp 0x140010611
xor eax, eax
mov qword [rbx + 0x88], rax
add rdi, 0x24
sub rsi, 1
jne 0x140010430
mov r15, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.1400e2050
add rsp, 0x58
pop rsi
pop rbp
ret