Function at 0x1400202c0
Capabilities:
Hash data with crc32

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x90
mov r9, qword [0x140173298]
mov edi, edx
movaps xmmword [rax - 0x48], xmm6
mov r15, r8
movaps xmmword [rax - 0x58], xmm7
mov r13, rcx
movaps xmmword [rax - 0x68], xmm8
mov rbp, r9
or dword [r9 + 0x4a18], 0x100
mov rbx, 0xffffffffffffffff
mov rsi, qword [r9 + 0x4010]
mov dword [r9 + 0x4a50], 2
mov qword [rsp + 0xe0], rsi
movaps xmmword [rax - 0x78], xmm9
mov rsi, qword [rsi + 0x1b0]
movsxd rdx, dword [rsi]
mov r8, qword [rsi + 8]
mov r10, rdx
shl r10, 4
add r10, r8
test rdx, rdx
je 0x14001fe7d
nop word [rax + rax]
mov rcx, rdx
shr rcx, 1
mov rax, rcx
add rax, rax
cmp dword [r8 + rax*8], edi
jae 0x14001fe75
lea r8, [r8 + rax*8]
mov rax, rbx
sub rax, rcx
add r8, 0x10
add rdx, rax
jmp 0x14001fe78
mov rdx, rcx
test rdx, rdx
jne 0x14001fe50
xor r12d, r12d
cmp r8, r10
je 0x14001fe93
cmp dword [r8], edi
jne 0x14001fe93
mov r14, qword [r8 + 8]
test r14, r14
jne 0x14001feb7
mov ecx, 8
call fcn.1400ebdd0
mov r8, rax
mov edx, edi
mov rcx, rsi
mov r14, rax
mov qword [rax], r12
call fcn.14004a4f0
mov r9, qword [0x140173298]
movsd xmm8, qword [r15]
xorps xmm9, xmm9
comiss xmm9, xmm8
movsd qword [rsp + 0xd0], xmm8
jb 0x14001ff7c
mov rax, qword [r9 + 0x4010]
mov rcx, qword [0x140173bd0]
movss xmm0, dword [rax + 0x98]
comiss xmm0, xmm9
mov rax, qword [0x140173b50]
jbe 0x14001ff17
movss xmm0, dword [rcx + 0x40]
addss xmm0, dword [0x14010b37c]
mulss xmm0, dword [rax + 0x94]
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_roundf]
movaps xmm1, xmm0
jmp 0x14001ff35
movss xmm0, dword [rcx + 0x58]
mulss xmm0, dword [rax + 0x94]
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_roundf]
movaps xmm1, xmm0
mulss xmm1, dword [0x14010b37c]
mov r9, qword [0x140173298]
mov rax, qword [r9 + 0x4010]
cmp qword [rax + 0x1b8], r12
jne 0x14001ff5c
lea rcx, [rax + 0x260]
cmp qword [r9 + 0x4e08], r12
je 0x14001ff63
lea rcx, [rax + 0x230]
movss xmm0, dword [rcx]
subss xmm0, dword [rax + 0x28]
subss xmm0, xmm1
mulss xmm0, dword [0x14010b29c]
movaps xmm8, xmm0
movss xmm7, dword [rsp + 0xd4]
comiss xmm9, xmm7
jb 0x14001ffbf
mov rcx, qword [0x140173bd0]
mov rax, qword [0x140173b50]
movss xmm0, dword [rcx + 0x5c]
mulss xmm0, dword [rax + 0x94]
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_roundf]
mov r9, qword [0x140173298]
movaps xmm7, xmm0
addss xmm7, xmm7
addss xmm7, dword [r14]
or dword [r9 + 0x4a18], 2
movss dword [r9 + 0x4a38], xmm8
movss dword [r9 + 0x4a3c], xmm7
mov dword [r9 + 0x4a20], 1
mov rcx, qword [0x140173bd0]
mov rax, qword [0x140173b50]
movss xmm0, dword [rcx + 0x68]
mulss xmm0, dword [rax + 0x94]
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_roundf]
mov rax, qword [0x140173bc8]
lea rcx, [rsp + 0x40]
mov rsi, qword [rsp + 0xe0]
movaps xmm6, xmm0
movaps xmm0, xmm8
movups xmm1, xmmword [rax + 0x90]
mov rax, qword [0x140173298]
lea r12, [rsi + 0x110]
addss xmm0, dword [r12]
movups xmmword [rsp + 0x40], xmm1
shufps xmm1, xmm1, 0xff
mulss xmm1, dword [rax + 0x38e8]
movss dword [rsp + 0xd0], xmm0
movss dword [rsp + 0x4c], xmm1
movaps xmm1, xmm7
addss xmm1, dword [r12 + 4]
movss dword [rsp + 0xd4], xmm1
call fcn.14004a1d0
mov rdx, qword [rsi + 0x2a8]
lea r9, [rsp + 0xd0]
mov dword [rsp + 0x30], 0
mov r8, r12
movss dword [rsp + 0x28], xmm6
mov dword [rsp + 0x20], eax
call fcn.140027120
mov rcx, qword [0x140173bd0]
mov rax, qword [0x140173b50]
movss xmm0, dword [rcx + 0x68]
mulss xmm0, dword [rax + 0x94]
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_roundf]
mov rax, qword [0x140173bc8]
lea rcx, [rsp + 0x40]
addss xmm8, dword [r12]
addss xmm7, dword [r12 + 4]
movaps xmm6, xmm0
movups xmm1, xmmword [rax + 0xa0]
mov rax, qword [0x140173298]
movss dword [rsp + 0xd0], xmm8
movups xmmword [rsp + 0x40], xmm1
shufps xmm1, xmm1, 0xff
mulss xmm1, dword [rax + 0x38e8]
movss dword [rsp + 0xd4], xmm7
movss dword [rsp + 0x4c], xmm1
call fcn.14004a1d0
mov rdx, qword [rsi + 0x2a8]
lea r9, [rsp + 0xd0]
movss dword [rsp + 0x38], xmm9
mov r8, r12
movss dword [rsp + 0x28], xmm6
mov dword [rsp + 0x20], eax
call fcn.1400271e0
mov r9, qword [rsi + 8]
lea rcx, [rsp + 0xd0]
xor edx, edx
test r13, r13
je 0x140020168
mov dword [rsp + 0x28], edi
lea r8, str._s__s__08X
mov qword [rsp + 0x20], r13
call fcn.1400499c0
jmp 0x140020178
lea r8, str._s__08X
mov dword [rsp + 0x20], edi
call fcn.1400499c0
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x40], rax
inc rbx
cmp byte [rax + rbx], 0
jne 0x140020185
mov rcx, qword [0x140173bd8]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x48], rbx
mov r9d, 0x4100211f
movaps xmm0, xmmword [rsp + 0x40]
xor r8d, r8d
movdqa xmmword [rsp + 0x40], xmm0
call fcn.14001d100
mov rsi, qword [rbp + 0x4010]
movzx r15d, al
mov ecx, dword [rsi + 0x44]
mov dword [rsi + 0x88], edi
mov dword [r14], ecx
cmp word [rsi + 0xcc], 1
jne 0x1400201e4
movsd xmm0, qword [rsi + 0x28]
movsd qword [r12], xmm0
mov r9d, edi
lea rdx, [0x1401075e1]
not r9d
lea r10, [0x1401024c0]
mov ebx, r9d
mov r8b, reloc.WLDAP32.dll_Ordinal_35
nop
cmp r8b, 0x23
jne 0x140020213
cmp byte [rdx], r8b
jne 0x140020213
cmp byte [rdx + 1], r8b
cmove ebx, r9d
movzx ecx, bl
movzx eax, r8b
movzx r8d, byte [rdx]
xor rcx, rax
shr ebx, 8
inc rdx
xor ebx, dword [r10 + rcx*4]
test r8b, r8b
jne 0x140020200
not ebx
cmp dword [rbp + 0x4074], ebx
jne 0x140020243
xor edx, edx
xor ecx, ecx
call fcn.14004daa0
cmp dword [rbp + 0x4b50], edi
jne 0x140020288
cmp word [rsi + 0x16c], 0
jne 0x14002025e
cmp byte [rsi + 0x172], 0
je 0x140020288
xor edx, edx
mov rcx, rsi
call fcn.140056720
xor edx, edx
mov rcx, rsi
call fcn.14005d150
mov rdx, rsi
mov ecx, ebx
call fcn.14004daa0
mov eax, dword [rbp + 0x4b7c]
mov dword [rbp + 0x40a0], eax
movaps xmm7, xmmword [rsp + 0x70]
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x48]
movzx eax, r15b
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x60
mov rcx, qword [0x140173298]
mov rbp, r8
mov rdi, qword [rdx]
xor edx, edx
movaps xmmword [rsp + 0x50], xmm6
movaps xmmword [rsp + 0x40], xmm7
mov rax, qword [rcx + 0x4010]
mov byte [rax + 0xc0], 1
mov rbx, qword [rcx + 0x4010]
mov rcx, rdi
movsxd rax, dword [rbx + 0x100]
mov r8, qword [rbx + 0x108]
mov r8d, dword [r8 + rax*4 - 4]
call fcn.140049b60
mov rcx, qword [rbx]
mov esi, eax
cmp dword [rcx + 0x405c], eax
jne 0x140020339
mov r8, rdi
mov edx, reloc.WS2_32.dll_inet_addr
mov ecx, eax
call fcn.140061e80
mov rcx, qword [0x140173b50]
mov rbx, qword [0x140173bd0]
movss xmm6, dword [rcx + 0x94]
movaps xmm0, xmm6
mulss xmm0, dword [rbx + 0x5c]
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_roundf]
mulss xmm6, dword [rbx + 0x58]
movaps xmm7, xmm0
movaps xmm0, xmm6
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_roundf]
mov rbx, qword [0x140173298]
lea rdx, [rsp + 0x30]
movaps xmm6, xmm0
mov dword [rsp + 0x30], 2
movss xmm2, dword [rbx + 0x38f0]
lea rcx, [rbx + 0x4aa0]
movss xmm1, dword [rbx + 0x38f4]
movss dword [rsp + 0x34], xmm2
movss dword [rsp + 0x38], xmm1
call fcn.140019430
movss dword [rbx + 0x38f0], xmm6
movss dword [rbx + 0x38f4], xmm7
mov rax, qword [0x140173b50]
mov rbx, qword [0x140173bd0]
movss xmm6, dword [rax + 0x94]
movaps xmm0, xmm6
mulss xmm0, dword [rbx + 0x64]
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_roundf]
mulss xmm6, dword [rbx + 0x60]
movaps xmm7, xmm0
movaps xmm0, xmm6
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_roundf]
mov rbx, qword [0x140173298]
lea rdx, [rsp + 0x30]
movaps xmm6, xmm0
mov dword [rsp + 0x30], reloc.WS2_32.dll_ntohl
movss xmm2, dword [rbx + 0x3934]
lea rcx, [rbx + 0x4aa0]
movss xmm1, dword [rbx + 0x3938]
movss dword [rsp + 0x34], xmm2
movss dword [rsp + 0x38], xmm1
call fcn.140019430
mov r8, rbp
movss dword [rbx + 0x3934], xmm6
mov edx, esi
movss dword [rbx + 0x3938], xmm7
mov rcx, rdi
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x80]
movaps xmm6, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x40]
add rsp, 0x60
pop rdi
jmp 0x14001fdc0