Function at 0x18002bb30
Capabilities:
Hash data with crc32

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0x100
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
mov rax, qword [0x180117040]
xor rax, rsp
mov qword [rbp - 0x31], rax
mov dword [rsp + 0x54], r8d
mov qword [rbp - 0x79], rdx
mov r12, rcx
mov rbx, qword [0x1801181c8]
mov r14, rbx
mov rax, qword [rbx + 0x3ef0]
mov byte [rax + 0xb8], 1
mov r13, qword [rbx + 0x3ef0]
mov eax, dword [rbx + 0x47c8]
mov dword [rsp + 0x58], eax
xor esi, esi
mov dword [rbx + 0x47c8], esi
cmp byte [r13 + 0xbb], sil
jne 0x18002c2b3
movsxd r8, dword [r13 + 0xf0]
mov rax, qword [r13 + 0xf8]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
call fcn.180005c90
mov edi, eax
mov rcx, qword [r13]
cmp dword [rcx + 0x3f38], eax
jne 0x18002bbfb
mov r8, r12
lea edx, [rsi + 0xb]
mov ecx, eax
call fcn.18001cb30
mov rbx, qword [0x1801181c8]
mov rcx, r12
cmp r12, 0xffffffffffffffff
jae 0x18002bc21
movzx edx, byte [rcx]
test dl, dl
je 0x18002bc21
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x18002bc18
cmp byte [rax], dl
je 0x18002bc21
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x18002bc04
movss xmm9, dword [rbx + 0x3c28]
xorps xmm8, xmm8
cmp r12, rcx
jne 0x18002bc39
xorps xmm10, xmm10
jmp 0x18002bc90
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r12
movss xmm0, dword [0x180103854]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x180103830]
movaps xmm2, xmm9
lea rdx, [rsp + 0x40]
mov rcx, qword [rbx + 0x3c20]
call fcn.180024890
movss xmm0, dword [rsp + 0x40]
addss xmm0, dword [0x1801036ec]
cvttss2si eax, xmm0
movd xmm10, eax
cvtdq2ps xmm10, xmm10
movss xmm9, dword [rsp + 0x44]
mov rcx, qword [rbx + 0x3ef0]
mov r9, qword [rcx + 0x1a8]
test r9, r9
jne 0x18002bcc6
movss xmm5, dword [rcx + 0x250]
cmp qword [rbx + 0x4b50], rsi
je 0x18002bcbc
movss xmm5, dword [rcx + 0x220]
subss xmm5, dword [rcx + 0x100]
jmp 0x18002bcf6
movsxd rdx, dword [r9 + 0xc]
mov r8, qword [r9 + 0x68]
lea rax, [rdx + 1]
imul rcx, rax, 0x1c
imul rax, rdx, 0x1c
movss xmm5, dword [rcx + r8]
subss xmm5, dword [rax + r8]
movss xmm0, dword [r9 + 0x18]
subss xmm0, dword [r9 + 0x14]
mulss xmm5, xmm0
movss xmm0, dword [r14 + 0x3828]
movss xmm4, dword [r14 + 0x3810]
movaps xmm1, xmm9
addss xmm1, xmm9
addss xmm0, xmm0
addss xmm1, xmm0
addss xmm1, xmm4
movss xmm2, dword [r13 + 0x104]
movaps xmm3, xmm2
addss xmm3, xmm1
movss xmm0, dword [r13 + 0x100]
subss xmm5, dword [0x180103778]
addss xmm5, xmm0
movss dword [rbp - 0x41], xmm0
movss dword [rbp - 0x3d], xmm2
movss dword [rbp - 0x39], xmm5
movss dword [rbp - 0x35], xmm3
subss xmm3, xmm2
subss xmm5, xmm0
movss dword [rsp + 0x40], xmm5
movss dword [rsp + 0x44], xmm3
movaps xmm1, xmm4
lea rcx, [rsp + 0x40]
call fcn.180014610
xor r9d, r9d
xor r8d, r8d
mov edx, edi
lea rcx, [rbp - 0x41]
call fcn.180014780
test al, al
je 0x18002c2b3
mov dword [rsp + 0x20], esi
lea r9, [rsp + 0x51]
lea r8, [rsp + 0x50]
mov edx, edi
lea rcx, [rbp - 0x41]
call fcn.180028530
movzx r10d, al
mov r9d, edi
not r9d
mov ebx, r9d
lea rdx, [0x180102971]
mov r8b, 0x23
lea r11, [0x1800fcbe0]
cmp r8b, 0x23
jne 0x18002bdda
cmp byte [rdx], r8b
jne 0x18002bdda
cmp byte [rdx + 1], r8b
cmove ebx, r9d
movzx ecx, bl
movzx eax, r8b
xor rcx, rax
shr ebx, 8
xor ebx, dword [r11 + rcx*4]
movzx r8d, byte [rdx]
inc rdx
test r8b, r8b
jne 0x18002bdc7
not ebx
mov rdx, qword [0x1801181c8]
movsxd rax, dword [rdx + 0x48a8]
cmp dword [rdx + 0x4898], eax
jle 0x18002be24
imul rcx, rax, 0x38
mov rax, qword [rdx + 0x48a0]
cmp dword [rcx + rax], ebx
jne 0x18002be24
mov r15b, 1
jmp 0x18002be27
xor r15b, r15b
test r10b, r10b
je 0x18002be3d
test r15b, r15b
jne 0x18002be3d
xor edx, edx
mov ecx, ebx
call fcn.180015a20
mov r15b, 1
mov ecx, dword [0x18011817c]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov eax, dword [rdx + rax]
cmp dword [0x18011e7f8], eax
jle 0x18002bebe
lea rcx, [0x18011e7f8]
call fcn.1800dc1f0
cmp dword [0x18011e7f8], 0xffffffff
jne 0x18002bebe
mov qword [0x18011e7d0], rsi
mov qword [0x18011e7d8], rsi
mov ecx, 0x30
call fcn.1800dc268
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [0x18011e7d0], rax
lea rcx, [0x1800def70]
call fcn.1800dc5fc
nop
lea rcx, [0x18011e7f8]
call fcn.1800dc184
mov rsi, qword [0x18011e7d0]
mov rax, qword [rsi + 8]
mov r8, rsi
movzx edx, byte [rax + 0x19]
test dl, dl
jne 0x18002beee
mov rcx, rax
cmp dword [rcx + 0x1c], edi
jae 0x18002bee2
mov rcx, qword [rcx + 0x10]
jmp 0x18002bee8
mov r8, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x18002bed7
cmp byte [r8 + 0x19], 0
jne 0x18002befb
cmp edi, dword [r8 + 0x1c]
jae 0x18002befe
mov r8, rsi
movss xmm7, dword [0x180103680]
cmp r8, rsi
jne 0x18002c0a9
mov dword [rbp - 0x59], edi
xorps xmm6, xmm6
movups xmmword [rbp - 0x55], xmm6
mov qword [rbp - 0x71], rax
xor r8d, r8d
mov dword [rbp - 0x69], r8d
mov rcx, rsi
test dl, dl
jne 0x18002bf56
nop dword [rax + rax]
mov qword [rbp - 0x71], rax
cmp dword [rax + 0x1c], edi
jae 0x18002bf43
mov dword [rbp - 0x69], r8d
mov rax, qword [rax + 0x10]
jmp 0x18002bf50
mov dword [rbp - 0x69], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], r8b
je 0x18002bf30
cmp byte [rcx + 0x19], r8b
jne 0x18002bf61
cmp edi, dword [rcx + 0x1c]
jae 0x18002bfda
movabs rax, 0x555555555555555
cmp qword [0x18011e7d8], rax
je 0x18002c2f5
lea rax, [0x18011e7d0]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], r8
mov ecx, 0x30
call fcn.1800dc268
mov r8, rax
movups xmm0, xmmword [rbp - 0x59]
movups xmmword [rax + 0x1c], xmm0
psrldq xmm6, 0xc
movd dword [rax + 0x2c], xmm6
mov qword [rax], rsi
mov qword [rax + 8], rsi
mov qword [rax + 0x10], rsi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp - 0x71]
movaps xmmword [rsp + 0x40], xmm0
lea rdx, [rsp + 0x40]
lea rcx, [0x18011e7d0]
call fcn.180044090
mov rsi, qword [0x18011e7d0]
mov rax, qword [rsi + 8]
mov r8, rsi
cmp byte [rax + 0x19], 0
jne 0x18002bffe
cmp dword [rax + 0x1c], edi
jae 0x18002bff2
mov rax, qword [rax + 0x10]
jmp 0x18002bff8
mov r8, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x18002bfe7
cmp byte [r8 + 0x19], 0
jne 0x18002c00b
cmp edi, dword [r8 + 0x1c]
jae 0x18002c00e
mov r8, rsi
mov rax, qword [0x1801181c8]
movups xmm0, xmmword [rax + 0x393c]
movups xmmword [rsp + 0x40], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x37d0]
movss dword [rsp + 0x4c], xmm0
lea rcx, [rsp + 0x40]
call fcn.180006220
movzx ecx, al
xorps xmm3, xmm3
cvtsi2ss xmm3, rcx
mulss xmm3, xmm7
mov ecx, eax
shr ecx, 8
movzx ecx, cl
xorps xmm2, xmm2
cvtsi2ss xmm2, rcx
mulss xmm2, xmm7
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xorps xmm1, xmm1
cvtsi2ss xmm1, rcx
mulss xmm1, xmm7
shr eax, 0x18
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm7
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm2
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm1
shufps xmm3, xmm3, 0x27
movss xmm3, xmm0
shufps xmm3, xmm3, 0x39
movups xmmword [rsp + 0x40], xmm3
movups xmmword [r8 + 0x20], xmm3
movss xmm6, dword [r14 + 0x18]
mulss xmm6, dword [0x180103774]
minss xmm6, dword [0x1801036f4]
mov rax, qword [0x1801181c8]
lea rcx, [rsp + 0x40]
cmp byte [rsp + 0x50], 0
je 0x18002c0db
movups xmm0, xmmword [rax + 0x394c]
jmp 0x18002c0e2
movups xmm0, xmmword [rax + 0x393c]
movups xmmword [rsp + 0x40], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x37d0]
movss dword [rsp + 0x4c], xmm0
call fcn.180006220
xorps xmm2, xmm2
movzx ecx, al
cvtsi2ss xmm2, rcx
mov ecx, eax
shr ecx, 8
xorps xmm3, xmm3
movzx ecx, cl
cvtsi2ss xmm3, rcx
mov ecx, eax
shr ecx, 0x10
xorps xmm5, xmm5
shr eax, 0x18
xorps xmm4, xmm4
movzx ecx, cl
cvtsi2ss xmm5, rax
cvtsi2ss xmm4, rcx
mulss xmm5, xmm7
mulss xmm4, xmm7
mulss xmm3, xmm7
mulss xmm2, xmm7
lea rsi, [r8 + 0x20]
subss xmm2, dword [rsi]
mulss xmm2, xmm6
addss xmm2, dword [rsi]
subss xmm3, dword [rsi + 4]
mulss xmm3, xmm6
addss xmm3, dword [rsi + 4]
subss xmm4, dword [rsi + 8]
mulss xmm4, xmm6
addss xmm4, dword [rsi + 8]
subss xmm5, dword [rsi + 0xc]
mulss xmm5, xmm6
addss xmm5, dword [rsi + 0xc]
shufps xmm2, xmm2, 0xe1
movss xmm2, xmm3
shufps xmm2, xmm2, 0xc6
movss xmm2, xmm4
shufps xmm2, xmm2, 0x27
movss xmm2, xmm5
shufps xmm2, xmm2, 0x39
movups xmmword [rsp + 0x40], xmm2
movups xmmword [rsi], xmm2
comiss xmm10, xmm8
jbe 0x18002c1ba
mov r9b, 1
xor r8d, r8d
mov rdx, r12
mov rcx, qword [rbp - 0x41]
call fcn.180006d00
movss xmm6, dword [rbp - 0x3d]
addss xmm6, dword [r14 + 0x3828]
addss xmm6, xmm9
movss xmm7, dword [rbp - 0x41]
movss dword [rsp + 0x40], xmm7
movss dword [rsp + 0x44], xmm6
movss xmm0, dword [rbp - 0x39]
movss dword [rsp + 0x48], xmm0
movss xmm8, dword [rbp - 0x35]
movss dword [rsp + 0x4c], xmm8
mov r12d, dword [rsp + 0x54]
mov edi, r12d
and edi, 0x40
jne 0x18002c237
mov rcx, rsi
call fcn.180006220
mov dword [rsp + 0x28], edi
movss xmm0, dword [r14 + 0x3814]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x40]
mov rcx, qword [r13 + 0x298]
call fcn.180021910
bt r12d, 0x14
jae 0x18002c24c
movups xmm0, xmmword [rbp - 0x41]
movups xmmword [r14 + 0x5b6c], xmm0
jmp 0x18002c293
mov rax, qword [rbp - 0x79]
test rax, rax
je 0x18002c293
test edi, edi
jne 0x18002c293
addss xmm7, dword [r14 + 0x381c]
addss xmm6, xmm8
mulss xmm6, dword [0x1801036b8]
mulss xmm9, dword [0x1801036b8]
subss xmm6, xmm9
mov r9b, 1
xor r8d, r8d
mov rdx, rax
unpcklps xmm7, xmm6
movq rcx, xmm7
call fcn.180006d00
test r15b, r15b
je 0x18002c2b3
mov eax, dword [rsp + 0x58]
mov dword [r14 + 0x47c8], eax
mov r8d, r12d
lea rdx, [rbp - 0x41]
mov ecx, ebx
call fcn.18002c300
jmp 0x18002c2b5
xor al, al
mov rcx, qword [rbp - 0x31]
xor rcx, rsp
call fcn.1800dbdb0
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x50]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.180027630
int3