Function at 0x1800e18f0
Capabilities:
Hash data with crc32

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xf0
mov rbx, qword [0x1801e3228]
mov r12, rdx
movaps xmmword [rax - 0x38], xmm6
mov rdi, rcx
movaps xmmword [rax - 0x48], xmm7
mov r15, rbx
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
mov rax, qword [rbx + 0x3ea0]
movaps xmmword [rsp + 0x70], xmm13
movaps xmmword [rsp + 0x60], xmm14
mov byte [rax + 0x98], 1
mov r14, qword [rbx + 0x3ea0]
cmp byte [r14 + 0x9b], 0
jne 0x1800e1f95
movsxd rcx, dword [r14 + 0xd0]
lea rdx, [rdi + 1]
mov rax, qword [r14 + 0xd8]
movzx r8d, byte [rdi]
mov r9d, dword [rax + rcx*4 - 4]
not r9d
mov esi, r9d
test r8b, r8b
je 0x1800e19d2
lea r10, [0x18017c700]
cmp r8b, 0x23
jne 0x1800e19b4
cmp byte [rdx], r8b
jne 0x1800e19b4
cmp byte [rdx + 1], r8b
cmove esi, r9d
movzx ecx, sil
movzx eax, r8b
movzx r8d, byte [rdx]
xor rcx, rax
shr esi, 8
inc rdx
xor esi, dword [r10 + rcx*4]
test r8b, r8b
jne 0x1800e19a1
not esi
cmp dword [rbx + 0x3ed4], esi
jne 0x1800e19f2
mov r8, rdi
mov edx, 0xb
mov ecx, esi
call fcn.1800d3960
mov rbx, qword [0x1801e3228]
mov rcx, rdi
cmp rdi, 0xffffffffffffffff
jae 0x1800e1a1d
nop dword [rax + rax]
movzx edx, byte [rcx]
test dl, dl
je 0x1800e1a1d
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x1800e1a14
cmp byte [rax], dl
je 0x1800e1a1d
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x1800e1a00
movss xmm14, dword [rbx + 0x3c00]
xorps xmm6, xmm6
cmp rdi, rcx
jne 0x1800e1a34
xorps xmm12, xmm12
jmp 0x1800e1a88
movss xmm0, dword [0x1801817b0]
lea rdx, [rbp + 0x77]
movss xmm3, dword [0x18018179c]
movaps xmm2, xmm14
mov qword [rsp + 0x30], rcx
mov rcx, qword [rbx + 0x3bf8]
mov qword [rsp + 0x28], rdi
movss dword [rsp + 0x20], xmm0
call fcn.1800f2060
movss xmm0, dword [rbp + 0x77]
addss xmm0, dword [0x18018169c]
movss xmm14, dword [rbp + 0x7b]
cvttss2si eax, xmm0
movd xmm12, eax
cvtdq2ps xmm12, xmm12
test byte [rbx + 0x3f58], 1
movss xmm2, dword [rbx + 0x3830]
addss xmm2, dword [rbx + 0x3c00]
mov rcx, qword [rbx + 0x3ea0]
je 0x1800e1ab2
movss xmm0, dword [rbx + 0x3f5c]
jmp 0x1800e1aba
movss xmm0, dword [rcx + 0x19c]
comiss xmm6, xmm0
jbe 0x1800e1afb
cmp qword [rcx + 0x188], 0
movss xmm1, dword [rcx + 0x230]
jne 0x1800e1adb
cmp qword [rbx + 0x4310], 0
je 0x1800e1ae3
movss xmm1, dword [rcx + 0x200]
subss xmm1, dword [rcx + 0xe0]
addss xmm1, xmm0
movss xmm0, dword [0x1801816a4]
maxss xmm0, xmm1
mulss xmm2, dword [0x180181718]
xorps xmm3, xmm3
movss xmm5, dword [r15 + 0x3820]
xorps xmm4, xmm4
cvttss2si eax, xmm0
movsd xmm0, qword [r12]
addss xmm5, xmm5
movsd qword [rbp + 0x77], xmm0
movaps xmm1, xmm0
shufps xmm1, xmm1, 0x55
movd xmm7, eax
addss xmm5, xmm2
movss xmm2, dword [rbp + 0x77]
comiss xmm6, xmm2
cvtdq2ps xmm7, xmm7
ja 0x1800e1b46
comiss xmm6, xmm1
jbe 0x1800e1b72
cmp qword [rcx + 0x188], 0
movss xmm3, dword [rcx + 0x230]
movss xmm4, dword [rcx + 0x234]
jne 0x1800e1b6a
cmp qword [rbx + 0x4310], 0
je 0x1800e1b72
movss xmm3, dword [rcx + 0x200]
ucomiss xmm2, xmm6
movss xmm0, dword [0x180181700]
jp 0x1800e1b86
jne 0x1800e1b86
movaps xmm2, xmm7
jmp 0x1800e1ba2
comiss xmm6, xmm2
jbe 0x1800e1ba2
subss xmm3, dword [rcx + 0xe0]
addss xmm3, xmm2
comiss xmm0, xmm3
movaps xmm2, xmm3
jb 0x1800e1ba2
movaps xmm2, xmm0
ucomiss xmm1, xmm6
jp 0x1800e1bae
jne 0x1800e1bae
movaps xmm1, xmm5
jmp 0x1800e1bcc
comiss xmm6, xmm1
jbe 0x1800e1bcc
subss xmm4, dword [rcx + 0xe4]
addss xmm4, xmm1
comiss xmm0, xmm4
jb 0x1800e1bc9
movaps xmm1, xmm0
jmp 0x1800e1bcc
movaps xmm1, xmm4
comiss xmm12, xmm6
movss xmm10, dword [r14 + 0xe0]
movss xmm8, dword [r14 + 0xe4]
cvttss2si eax, xmm2
movss dword [rbp - 0x69], xmm10
movss dword [rbp - 0x65], xmm8
movd xmm13, eax
cvttss2si eax, xmm1
cvtdq2ps xmm13, xmm13
movd xmm11, eax
cvtdq2ps xmm11, xmm11
addss xmm13, xmm10
maxss xmm11, xmm14
movss dword [rbp - 0x61], xmm13
addss xmm11, xmm8
movss dword [rbp - 0x5d], xmm11
jbe 0x1800e1c34
movaps xmm0, xmm12
addss xmm0, dword [r15 + 0x3834]
jmp 0x1800e1c37
xorps xmm0, xmm0
xor r9d, r9d
movss dword [rbp - 0x79], xmm10
mov dword [r15 + 0x3f58], r9d
movaps xmm7, xmm13
mov rax, qword [rbx + 0x3ea0]
addss xmm7, xmm0
movaps xmm9, xmm11
movss dword [rbp - 0x75], xmm8
addss xmm9, xmm6
movss xmm0, dword [rax + 0x224]
comiss xmm0, xmm8
movss dword [rbp - 0x71], xmm7
movss dword [rbp - 0x6d], xmm9
jbe 0x1800e1e72
comiss xmm9, dword [rax + 0x21c]
jbe 0x1800e1e72
movss xmm0, dword [rax + 0x220]
comiss xmm0, xmm10
jbe 0x1800e1e72
comiss xmm7, dword [rax + 0x218]
jbe 0x1800e1e72
call fcn.1800cba90
comiss xmm12, xmm6
jbe 0x1800e1d25
movaps xmm6, xmm13
movaps xmm7, xmm8
addss xmm6, dword [r15 + 0x3834]
addss xmm7, dword [r15 + 0x3820]
mov r9b, 1
xor r8d, r8d
mov rdx, rdi
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq rcx, xmm0
call fcn.1800bbc10
movss xmm1, dword [r14 + 0xf8]
addss xmm12, xmm6
movss xmm0, dword [r14 + 0xfc]
addss xmm14, xmm7
maxss xmm1, xmm12
maxss xmm0, xmm14
movss dword [r14 + 0xf8], xmm1
movss dword [r14 + 0xfc], xmm0
mov rdi, qword [0x1801e3228]
subss xmm13, xmm10
subss xmm11, xmm8
mov ecx, 3
lea rdx, [rdi + 0x3918]
movss dword [rbp + 0x77], xmm13
movss dword [rbp + 0x7b], xmm11
call fcn.1800bb860
mov rbx, qword [0x1801e3228]
lea rdx, [rbp - 0x79]
movss xmm6, dword [rdi + 0x3824]
mov dword [rbp - 0x79], 7
movss xmm0, dword [rbx + 0x380c]
lea rcx, [rbx + 0x4028]
movss dword [rbp - 0x75], xmm0
call fcn.1800d4210
movss dword [rbx + 0x380c], xmm6
lea rdx, [rbp - 0x79]
mov rbx, qword [0x1801e3228]
movss xmm6, dword [rdi + 0x3828]
mov dword [rbp - 0x79], 8
movss xmm0, dword [rbx + 0x3810]
lea rcx, [rbx + 0x4028]
movss dword [rbp - 0x75], xmm0
call fcn.1800d4210
movss dword [rbx + 0x3810], xmm6
lea rdx, [rbp - 0x79]
mov rbx, qword [0x1801e3228]
mov dword [rbp - 0x79], 2
movss xmm0, dword [rbx + 0x37e8]
lea rcx, [rbx + 0x4028]
movss xmm1, dword [rbx + 0x37ec]
movss dword [rbp - 0x75], xmm0
movss dword [rbp - 0x71], xmm1
call fcn.1800d4210
movsd xmm0, qword [rdi + 0x381c]
lea r8, [rbp + 0x77]
mov edx, esi
movsd qword [rbx + 0x37e8], xmm0
xor ecx, ecx
mov dword [rsp + 0x20], 0x10004
call fcn.1800c4080
mov ecx, 3
call fcn.1800bb9a0
mov r8, qword [0x1801e3228]
movsxd rax, dword [r8 + 0x4018]
cmp eax, 1
jl 0x1800e1e6b
mov rcx, qword [r8 + 0x4020]
lea rdx, [rax + rax*4]
movsxd rax, dword [rcx + rdx*4 - 0x14]
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
add rax, rax
movups xmmword [r8 + rax*8 + 0x38a8], xmm0
dec dword [r8 + 0x4018]
mov al, 1
jmp 0x1800e1f97
movss xmm1, dword [r15 + 0x3820]
lea rcx, [rbp + 0x77]
movaps xmm0, xmm7
movaps xmm2, xmm9
subss xmm0, xmm10
subss xmm2, xmm8
movss dword [rbp + 0x77], xmm0
movss dword [rbp + 0x7b], xmm2
call fcn.1800cb4d0
mov eax, dword [rbx + 0x3f50]
movups xmm0, xmmword [rbp - 0x79]
mov dword [rbx + 0x3f70], eax
mov rax, qword [rbx + 0x3ea0]
movups xmm1, xmmword [rbp - 0x69]
mov dword [rbx + 0x3f6c], r9d
movups xmmword [rbx + 0x3f78], xmm0
mov dword [rbx + 0x3f74], r9d
movups xmmword [rbx + 0x3f88], xmm1
mov dword [rbx + 0x3f58], r9d
comiss xmm9, dword [rax + 0x21c]
jbe 0x1800e1f18
movss xmm0, dword [rax + 0x224]
comiss xmm0, xmm8
jbe 0x1800e1f18
comiss xmm7, dword [rax + 0x218]
jbe 0x1800e1f18
movss xmm0, dword [rax + 0x220]
comiss xmm0, xmm10
jbe 0x1800e1f18
mov dword [rbx + 0x3f74], 0x200
jmp 0x1800e1f21
cmp byte [rbx + 0x53ec], r9b
je 0x1800e1f95
movss xmm1, dword [rbx + 0x3844]
movss xmm0, dword [rbx + 0x3848]
maxss xmm10, dword [rax + 0x218]
maxss xmm8, dword [rax + 0x21c]
minss xmm7, dword [rax + 0x220]
minss xmm9, dword [rax + 0x224]
movss xmm2, dword [rbx + 0xdfc]
subss xmm10, xmm1
subss xmm8, xmm0
addss xmm7, xmm1
addss xmm9, xmm0
comiss xmm2, xmm10
jb 0x1800e1f95
movss xmm0, dword [rbx + 0xe00]
comiss xmm0, xmm8
jb 0x1800e1f95
comiss xmm7, xmm2
jbe 0x1800e1f95
comiss xmm9, xmm0
jbe 0x1800e1f95
or dword [rbx + 0x3f74], 1
xor al, al
movaps xmm14, xmmword [rsp + 0x60]
lea r11, [rsp + 0xf0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
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]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret