Function at 0x1400622d0
Capabilities:
Hash data with crc32

Disassembly:
mov rax, rsp
mov byte [rax + 0x20], r9b
mov qword [rax + 0x18], r8
push rbp
push rbx
push rsi
push rdi
push r12
lea rbp, [rax - 0x57]
sub rsp, 0x100
mov rdi, qword [0x1402c9880]
mov r12, rcx
mov qword [rax - 0x30], r13
mov qword [rax - 0x38], r14
mov qword [rax - 0x40], r15
mov r15d, edx
mov r14, qword [rdi + 0x3f08]
movaps xmmword [rax - 0x78], xmm9
mov esi, dword [r14 + 0x14]
and esi, 4
cmp qword [r14 + 0x1a8], 0
jne 0x140062333
cmp qword [rdi + 0x4bd8], 0
lea rax, [r14 + 0x250]
je 0x14006233a
lea rax, [r14 + 0x220]
movss xmm3, dword [rax]
xorps xmm9, xmm9
movss xmm0, dword [rax + 4]
xor edx, edx
cvttss2si eax, dword [r8]
movss xmm4, dword [r14 + 0x100]
subss xmm0, dword [r14 + 0x104]
subss xmm3, xmm4
movd xmm2, eax
cvttss2si eax, dword [r8 + 4]
cvtdq2ps xmm2, xmm2
movd xmm1, eax
ucomiss xmm2, xmm9
cvtdq2ps xmm1, xmm1
jp 0x140062383
lea eax, [rdx + 1]
je 0x140062385
mov eax, edx
ucomiss xmm1, xmm9
jp 0x140062392
mov ebx, 2
je 0x140062394
mov ebx, edx
movss xmm5, dword [0x14025794c]
or ebx, eax
comiss xmm9, xmm2
mov dword [rbp + 0x67], ebx
jb 0x1400623b2
addss xmm3, xmm2
movaps xmm2, xmm3
maxss xmm2, xmm5
comiss xmm9, xmm1
jb 0x1400623c3
addss xmm0, xmm1
movaps xmm1, xmm0
maxss xmm1, xmm5
addss xmm4, xmm9
movzx eax, r9b
neg al
lea r13, [r14 + 0x100]
subss xmm2, xmm9
mov eax, 0xc0
sbb ecx, ecx
and ecx, 0x2d
movd xmm5, ecx
lea rcx, [rbp - 0x79]
cvtdq2ps xmm5, xmm5
subss xmm1, xmm5
movaps xmm0, xmm5
addss xmm0, dword [r13 + 4]
or dword [rdi + 0x47f0], 3
movss dword [rdi + 0x4800], xmm4
test r9b, r9b
movss dword [rdi + 0x4810], xmm2
movss dword [rdi + 0x4814], xmm1
movss dword [rdi + 0x4804], xmm0
mov qword [rdi + 0x4808], rdx
mov dword [rdi + 0x47f4], 1
mov dword [rdi + 0x47f8], 1
mov byte [r14 + 0xb8], 1
movsd xmm2, qword [r8]
mov r8d, 0xf0
movss xmm0, dword [0x1402ce038]
cmovne r8d, eax
movss xmm4, dword [r13]
movss xmm1, dword [0x1402ce03c]
movss xmm3, dword [r13 + 4]
movss dword [rbp - 0x79], xmm0
movss xmm0, dword [0x1402ce040]
movss dword [rbp - 0x71], xmm0
movaps xmm0, xmm4
movss dword [rbp - 0x75], xmm1
addss xmm0, xmm2
movss xmm1, dword [0x1402ce044]
addss xmm4, xmm9
mulss xmm1, dword [rdi + 0x37c8]
movsd qword [rsp + 0x50], xmm2
movss dword [rbp + 0x5f], xmm0
movaps xmm0, xmm2
movss dword [rbp - 0x6d], xmm1
movaps xmm1, xmm3
shufps xmm0, xmm0, 0x55
addss xmm3, xmm5
addss xmm1, xmm0
movss dword [rsp + 0x50], xmm4
movss dword [rbp - 0x7d], xmm3
movss dword [rbp + 0x63], xmm1
call fcn.140008d50
mov rcx, qword [rdi + 0x3f08]
lea rdx, [rsp + 0x50]
movss xmm0, dword [0x140257960]
mov r9d, eax
mov dword [rsp + 0x28], r8d
lea r8, [rbp + 0x5f]
movss dword [rsp + 0x20], xmm0
mov rcx, qword [rcx + 0x298]
call fcn.1400228f0
cmp byte [rbp + 0x77], 0
je 0x140062a18
mov rbx, qword [0x1402c9880]
lea rcx, [rbp - 0x79]
movaps xmmword [rsp + 0xd0], xmm7
movaps xmmword [rsp + 0xc0], xmm8
movaps xmmword [rsp + 0xa0], xmm10
mov rax, qword [rbx + 0x3f08]
movss xmm10, dword [0x1402578d8]
mov byte [rax + 0xb8], 1
movss xmm3, dword [0x1402cdff0]
movss xmm5, dword [0x1402cdfe8]
movss xmm4, dword [0x1402cdfec]
movss xmm1, dword [rbx + 0x37c8]
mov rax, qword [rbp + 0x6f]
movaps xmm2, xmm1
mulss xmm2, dword [0x1402cdff4]
movss dword [rbp - 0x71], xmm3
movss dword [rbp - 0x61], xmm3
movss dword [rbp - 0x51], xmm3
movss dword [rbp - 0x41], xmm3
movss xmm3, dword [rax]
movaps xmm0, xmm3
mulss xmm1, xmm9
subss xmm0, dword [0x1402579b4]
mulss xmm3, xmm10
mulss xmm1, dword [0x1402cdff4]
addss xmm0, dword [r13]
addss xmm3, dword [r13]
movss dword [rbp - 0x5d], xmm1
movss dword [rbp - 0x4d], xmm1
movss xmm1, dword [r13 + 4]
movss dword [rbp + 0x5f], xmm0
movaps xmm0, xmm1
addss xmm0, dword [0x1402579ac]
addss xmm1, dword [0x1402579a8]
movss dword [rbp - 0x79], xmm5
movss dword [rbp - 0x75], xmm4
movss dword [rbp - 0x6d], xmm2
movss dword [rbp + 0x63], xmm0
movss dword [rbp - 0x69], xmm5
movss dword [rbp - 0x65], xmm4
movss dword [rbp - 0x59], xmm5
movss dword [rbp - 0x55], xmm4
movss dword [rbp - 0x49], xmm5
movss dword [rbp - 0x45], xmm4
movss dword [rbp - 0x3d], xmm2
movss dword [rsp + 0x50], xmm3
movss dword [rbp - 0x7d], xmm1
call fcn.140008d50
lea rcx, [rbp - 0x69]
mov r11d, eax
call fcn.140008d50
lea rcx, [rbp - 0x59]
mov r10d, eax
call fcn.140008d50
lea rcx, [rbp - 0x49]
mov r8d, eax
call fcn.140008d50
movss xmm0, dword [0x140257960]
lea rdx, [rsp + 0x50]
mov rcx, qword [rbx + 0x3f08]
mov r9d, eax
movss dword [rsp + 0x38], xmm0
mov dword [rsp + 0x30], r11d
mov dword [rsp + 0x28], r10d
mov rcx, qword [rcx + 0x298]
mov dword [rsp + 0x20], r8d
lea r8, [rbp + 0x5f]
call fcn.140022aa0
mov rbx, qword [0x1402c9880]
mov rax, qword [rbx + 0x3f08]
mov byte [rax + 0xb8], 1
movss xmm1, dword [rbx + 0x37c8]
movss xmm5, dword [0x1402cdfe8]
movaps xmm2, xmm1
movss xmm4, dword [0x1402cdfec]
movss xmm3, dword [0x1402cdff0]
mulss xmm2, xmm9
movss dword [rbp - 0x49], xmm5
movss dword [rbp - 0x45], xmm4
mulss xmm2, dword [0x1402cdff4]
movss dword [rbp - 0x41], xmm3
mulss xmm1, dword [0x1402cdff4]
lea rcx, [rbp - 0x49]
mov rax, qword [rbp + 0x6f]
movss dword [rbp - 0x3d], xmm2
movss dword [rbp - 0x6d], xmm2
movss xmm2, dword [r13]
movss xmm0, dword [rax]
mulss xmm0, xmm10
movss dword [rbp - 0x4d], xmm1
movss dword [rbp - 0x5d], xmm1
movss xmm1, dword [r13 + 4]
addss xmm0, xmm2
addss xmm2, dword [0x1402579b4]
movss dword [rbp - 0x59], xmm5
movss dword [rbp - 0x55], xmm4
movss dword [rbp - 0x51], xmm3
movss dword [rbp + 0x5f], xmm0
movaps xmm0, xmm1
addss xmm0, dword [0x1402579ac]
addss xmm1, dword [0x1402579a8]
movss dword [rbp - 0x69], xmm5
movss dword [rbp - 0x65], xmm4
movss dword [rbp - 0x61], xmm3
movss dword [rbp + 0x63], xmm0
movss dword [rbp - 0x79], xmm5
movss dword [rbp - 0x75], xmm4
movss dword [rbp - 0x71], xmm3
movss dword [rsp + 0x50], xmm2
movss dword [rbp - 0x7d], xmm1
call fcn.140008d50
lea rcx, [rbp - 0x59]
mov r11d, eax
call fcn.140008d50
lea rcx, [rbp - 0x69]
mov r10d, eax
call fcn.140008d50
lea rcx, [rbp - 0x79]
mov r8d, eax
call fcn.140008d50
movss xmm0, dword [0x140257960]
lea rdx, [rsp + 0x50]
mov rcx, qword [rbx + 0x3f08]
mov r9d, eax
movss dword [rsp + 0x38], xmm0
mov dword [rsp + 0x30], r11d
mov dword [rsp + 0x28], r10d
mov rcx, qword [rcx + 0x298]
mov dword [rsp + 0x20], r8d
lea r8, [rbp + 0x5f]
call fcn.140022aa0
mov rbx, qword [rbp + 0x6f]
lea rcx, [rbp - 0x49]
mov r8, qword [0x1402c9880]
movss xmm8, dword [0x1402579a0]
mov rax, qword [r8 + 0x3f08]
mov byte [rax + 0xb8], 1
movss xmm1, dword [0x1402ce00c]
movss xmm0, dword [0x1402ce008]
movss dword [rbp - 0x45], xmm1
movss xmm1, dword [0x1402ce014]
mulss xmm1, dword [r8 + 0x37c8]
movss dword [rbp - 0x49], xmm0
movss xmm0, dword [0x1402ce010]
movss dword [rbp - 0x3d], xmm1
movss xmm1, dword [r13 + 4]
movss dword [rbp - 0x41], xmm0
addss xmm1, xmm8
movss xmm0, dword [rbx]
addss xmm0, dword [r13]
movss dword [rbp + 0x73], xmm1
movss dword [rbp + 0x6f], xmm0
call fcn.140008d50
mov rcx, qword [r8 + 0x3f08]
mov r9d, eax
movss xmm0, dword [0x140257960]
lea r8, [rbp + 0x6f]
mov dword [rsp + 0x28], Ordinal_50
mov rdx, r13
movss dword [rsp + 0x20], xmm0
mov rcx, qword [rcx + 0x298]
call fcn.1400228f0
mov r8, qword [0x1402c9880]
lea rcx, [rbp - 0x49]
mov rax, qword [r8 + 0x3f08]
mov byte [rax + 0xb8], 1
movss xmm1, dword [0x1402cdfac]
movss xmm0, dword [0x1402cdfa8]
mov rax, qword [r8 + 0x3f08]
movss dword [rbp - 0x45], xmm1
movss xmm1, dword [0x1402cdfb4]
mulss xmm1, dword [r8 + 0x37c8]
mov rax, qword [rax + 0x298]
movss dword [rbp - 0x49], xmm0
movss xmm0, dword [0x1402cdfb0]
movss dword [rbp - 0x3d], xmm1
movss dword [rbp - 0x41], xmm0
mov qword [rsp + 0x50], rax
call fcn.140008d50
movss xmm2, dword [r8 + 0x3c30]
mov dword [rbp + 0x77], eax
test r12, r12
jne 0x14006292b
subss xmm8, xmm2
jmp 0x1400629bd
movss xmm7, dword [0x140257a14]
lea rdx, [rbp + 0x5f]
movss xmm3, dword [0x140257a08]
mov rcx, qword [r8 + 0x3c28]
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], r12
movss dword [rsp + 0x20], xmm7
call fcn.1400283f0
mov rcx, qword [0x1402c9880]
lea rdx, [rbp + 0x6f]
movss xmm3, dword [0x140257a08]
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], r12
movss xmm2, dword [rcx + 0x3c30]
mov rcx, qword [rcx + 0x3c28]
movss dword [rsp + 0x20], xmm7
call fcn.1400283f0
movss xmm0, dword [rbp + 0x6f]
addss xmm0, dword [0x140257904]
subss xmm8, dword [rbp + 0x63]
cvttss2si eax, xmm0
movd xmm9, eax
mov eax, dword [rbp + 0x77]
cvtdq2ps xmm9, xmm9
movss xmm0, dword [rbx]
lea rdx, [rbp + 0x6f]
mov rcx, qword [rsp + 0x50]
subss xmm0, xmm9
mulss xmm8, xmm10
mov r9, r12
mov r8d, eax
addss xmm8, dword [r13 + 4]
mulss xmm0, xmm10
addss xmm0, dword [r13]
movss dword [rbp + 0x73], xmm8
movss dword [rbp + 0x6f], xmm0
call fcn.140023430
mov ebx, dword [rbp + 0x67]
movaps xmm10, xmmword [rsp + 0xa0]
movaps xmm8, xmmword [rsp + 0xc0]
movaps xmm7, xmmword [rsp + 0xd0]
mov r9, qword [r14 + 8]
lea rcx, [rbp + 0x6f]
movaps xmm9, xmmword [rsp + 0xb0]
xor edx, edx
mov r13, qword [rsp + 0xf8]
test r12, r12
je 0x140062a50
mov dword [rsp + 0x28], r15d
lea r8, str._s__s__08X
mov qword [rsp + 0x20], r12
call fcn.1400086c0
jmp 0x140062a61
lea r8, str._s__08X
mov dword [rsp + 0x20], r15d
call fcn.1400086c0
mov rcx, qword [rbp + 0x6f]
or esi, 0x1010183
mov r8d, esi
xor edx, edx
call fcn.1400115d0
mov rsi, qword [rdi + 0x3f08]
movzx r12d, al
cmp word [rsi + 0xc2], 1
mov dword [rsi + 0x80], r15d
mov byte [rsi + 0xd2], bl
jne 0x140062aa5
movsd xmm0, qword [rsi + 0x20]
movsd qword [r14 + 0x100], xmm0
mov r14, qword [rsp + 0xf0]
lea rdx, [0x140248ed9]
mov r9d, r15d
lea r10, [0x140249e70]
not r9d
mov r8b, reloc.WLDAP32.dll_Ordinal_35
mov ebx, r9d
cmp r8b, 0x23
jne 0x140062ada
cmp byte [rdx], r8b
jne 0x140062ada
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 0x140062ac7
not ebx
cmp dword [rdi + 0x3f68], ebx
jne 0x140062b0a
xor edx, edx
xor ecx, ecx
call fcn.14000b650
cmp dword [rdi + 0x4918], r15d
mov r15, qword [rsp + 0xe8]
jne 0x140062b58
cmp word [rsi + 0x15c], 0
jne 0x140062b2e
cmp byte [rsi + 0x162], 0
je 0x140062b58
xor edx, edx
mov rcx, rsi
call fcn.140013d30
xor edx, edx
mov rcx, rsi
call fcn.140019730
mov rdx, rsi
mov ecx, ebx
call fcn.14000b650
mov eax, dword [rdi + 0x493c]
mov dword [rdi + 0x3f90], eax
movzx eax, r12b
add rsp, 0x100
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret