Function at 0x180011ef0
Capabilities:
Hash data with crc32

Disassembly:
mov r11, rsp
mov qword [r11 + 0x18], rsi
mov qword [r11 + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [r11 - 0x5f]
sub rsp, 0xa0
mov rax, qword [0x1801300c0]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov edi, ecx
mov r15, rdx
mov rcx, qword [0x18022b8b0]
mov rsi, rcx
movsxd rax, dword [rcx + 0x4b18]
cmp dword [rcx + 0x4b08], eax
jle 0x180012435
imul r8, rax, 0x38
mov rax, qword [rcx + 0x4b10]
cmp dword [r8 + rax], edi
jne 0x180012435
mov rdx, qword [0x18022bae8]
mov qword [r11 + 8], rbx
mov rbx, rdx
movaps xmmword [r11 - 0x28], xmm6
mov rax, qword [rdx + 8]
cmp byte [rax + 0x19], 0
jne 0x180011f87
nop dword [rax]
cmp dword [rax + 0x1c], edi
jae 0x180011f7b
mov rax, qword [rax + 0x10]
jmp 0x180011f81
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x180011f70
cmp byte [rbx + 0x19], 0
jne 0x180011f92
cmp edi, dword [rbx + 0x1c]
jae 0x180011f95
mov rbx, rdx
cmp rbx, rdx
jne 0x180011ffc
xor eax, eax
mov dword [rbp - 0x19], edi
mov qword [rbp - 9], rax
lea r8, [rbp - 0x19]
movsd xmm0, qword [rbp - 9]
lea rdx, [rbp + 7]
movsd qword [rbp - 0x15], xmm0
call fcn.1800149d0
mov rcx, qword [0x18022bae8]
mov rbx, rcx
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x180011fe7
nop
cmp dword [rax + 0x1c], edi
jae 0x180011fdb
mov rax, qword [rax + 0x10]
jmp 0x180011fe1
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x180011fd0
cmp byte [rbx + 0x19], 0
jne 0x180011ff2
cmp edi, dword [rbx + 0x1c]
jae 0x180011ff5
mov rbx, rcx
mov rcx, qword [0x18022b8b0]
movss xmm1, dword [r15 + 8]
xor r14d, r14d
mov eax, dword [rsi + 0x4a30]
xorps xmm6, xmm6
subss xmm1, dword [r15]
test al, 0x10
je 0x180012030
movss xmm0, dword [rsi + 0x4a70]
maxss xmm0, xmm1
movss dword [rsi + 0x4a70], xmm0
jmp 0x1800120ef
movss xmm3, dword [0x18011457c]
xorps xmm4, xmm4
and eax, 2
je 0x180012049
comiss xmm6, dword [rsi + 0x4a50]
jb 0x180012055
movss dword [rbp - 1], xmm1
movaps xmm4, xmm1
test eax, eax
je 0x18001205e
comiss xmm6, dword [rsi + 0x4a54]
jb 0x18001208d
movss xmm0, dword [rcx + 0x3938]
movss xmm1, dword [rcx + 0x38f4]
movaps xmm3, xmm0
addss xmm3, dword [rcx + 0x3d58]
addss xmm1, xmm1
mulss xmm3, dword [0x1801143d4]
subss xmm3, xmm0
addss xmm3, xmm1
movss xmm2, dword [rcx + 0x18]
movaps xmm0, xmm3
subss xmm0, dword [rbx + 0x24]
mulss xmm2, dword [0x180114390]
mov dword [rbp - 0x15], r14d
mov dword [rbp - 0x11], 0x7f7fffff
mulss xmm2, xmm0
movups xmm0, xmmword [rbp - 0x19]
addss xmm2, dword [rbx + 0x24]
movss xmm0, xmm4
shufps xmm0, xmm0, 0x93
movss xmm0, xmm3
shufps xmm0, xmm0, 0x39
movss dword [rbx + 0x24], xmm2
or dword [rcx + 0x4a30], 0x10
movups xmmword [rbp - 0x19], xmm0
mov qword [rcx + 0x4a80], r14
movups xmmword [rcx + 0x4a70], xmm0
mov qword [rcx + 0x4a88], r14
mov r9d, dword [rsi + 0x5e58]
lea r8, str.Combo__02d
mov edx, 0x10
lea rcx, [rbp + 0x17]
call fcn.18001bbd0
movzx r9d, byte [rbp + 0x17]
lea r8, [rbp + 0x18]
mov r10d, 0xffffffff
mov ecx, r10d
test r9b, r9b
je 0x180012160
lea r11, [0x180107a60]
nop dword [rax]
cmp r9b, 0x23
jne 0x180012143
cmp byte [r8], r9b
jne 0x180012143
cmp byte [r8 + 1], r9b
cmove ecx, r10d
movzx edx, cl
movzx eax, r9b
movzx r9d, byte [r8]
xor rdx, rax
shr ecx, 8
inc r8
xor ecx, dword [r11 + rdx*4]
test r9b, r9b
jne 0x180012130
not ecx
call fcn.1800237b0
mov rdi, rax
test rax, rax
je 0x18001224c
cmp byte [rax + 0xc7], r14b
je 0x18001224c
lea r8, [rbp - 1]
mov qword [rbp - 1], r14
lea rdx, [rbp - 0x19]
mov rcx, rax
call fcn.180023fe0
mov rdx, rcx
lea r8, [rbp - 1]
lea rcx, [rbp - 9]
call fcn.1800240f0
lea r8, [rbp - 9]
mov rdx, rdi
lea rcx, [rbp - 0x19]
call fcn.180023e80
lea r9, [rdi + 0xe8]
lea rcx, [rbp + 7]
mov dword [r9], 3
call fcn.18002e750
movss xmm0, dword [r15]
lea rax, [rbp + 7]
movss xmm1, dword [r15 + 0xc]
lea r8, [rbp - 0x19]
mov dword [rsp + 0x30], 1
lea rdx, [rbp - 1]
mov qword [rsp + 0x28], r15
lea rcx, [rbp - 9]
movss dword [rbp - 1], xmm0
movss dword [rbp + 3], xmm1
mov qword [rsp + 0x20], rax
call fcn.18002e3f0
mov rax, qword [0x18022b8b0]
movss xmm1, dword [rbp - 9]
movss xmm0, dword [rbp - 5]
addss xmm1, xmm6
addss xmm0, dword [0x180114354]
or dword [rax + 0x4a30], 1
mov qword [rax + 0x4a48], r14
mov dword [rax + 0x4a34], 1
movss dword [rax + 0x4a40], xmm1
movss dword [rax + 0x4a44], xmm0
mov edi, 2
mov dword [rbp - 9], 0x40a00000
mov ecx, edi
mov dword [rbp - 5], 0x40a00000
lea rdx, [rbp - 9]
call fcn.18001ca70
movss xmm6, dword [0x180114250]
mov ecx, 4
movaps xmm1, xmm6
call fcn.18001c9f0
movaps xmm1, xmm6
mov ecx, 9
call fcn.18001c9f0
movss xmm1, dword [rbx + 0x20]
xor ecx, ecx
call fcn.18001c9f0
movss xmm6, dword [0x180114514]
lea rcx, [rbp - 0x19]
movss xmm3, dword [0x18022f970]
movss xmm0, dword [0x18022f974]
movss xmm1, dword [0x18022f978]
movss xmm2, dword [0x18022f97c]
mov rax, qword [0x18022b8b0]
divss xmm3, xmm6
divss xmm2, xmm6
shufps xmm3, xmm3, 0xe1
divss xmm0, xmm6
divss xmm1, xmm6
movss xmm3, xmm0
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm1
shufps xmm3, xmm3, 0x27
movss xmm3, xmm2
mulss xmm2, dword [rax + 0x38e8]
shufps xmm3, xmm3, 0x39
movups xmmword [rbp - 0x19], xmm3
movups xmmword [rbp - 0x19], xmm3
movss dword [rbp - 0xd], xmm2
call fcn.18001c380
mov edx, eax
mov ecx, 5
call fcn.18001c890
movss xmm3, dword [0x18022f980]
lea rcx, [rbp - 0x19]
movss xmm0, dword [0x18022f984]
movss xmm1, dword [0x18022f988]
movss xmm2, dword [0x18022f98c]
mov rax, qword [0x18022b8b0]
divss xmm3, xmm6
divss xmm2, xmm6
shufps xmm3, xmm3, 0xe1
divss xmm0, xmm6
divss xmm1, xmm6
movss xmm3, xmm0
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm1
shufps xmm3, xmm3, 0x27
movss xmm3, xmm2
mulss xmm2, dword [rax + 0x38e8]
shufps xmm3, xmm3, 0x39
movups xmmword [rbp - 0x19], xmm3
movups xmmword [rbp - 0x19], xmm3
movss dword [rbp - 0xd], xmm2
call fcn.18001c380
mov edx, eax
mov ecx, 4
call fcn.18001c890
xor edx, edx
lea rcx, [rbp + 0x17]
mov r8d, 0x400014f
call fcn.180026490
mov ecx, 4
movzx ebx, al
call fcn.18001cb00
mov r8, qword [0x18022b8b0]
movaps xmm6, xmmword [rsp + 0x90]
mov ecx, dword [r8 + 0x4aa8]
cmp ecx, edi
jge 0x1800123e0
mov edi, ecx
test ecx, ecx
jle 0x180012418
nop dword [rax + rax]
movsxd rax, ecx
dec edi
mov rcx, qword [r8 + 0x4ab0]
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 + 0x39d8], xmm0
dec dword [r8 + 0x4aa8]
mov ecx, dword [r8 + 0x4aa8]
test edi, edi
jg 0x1800123e0
test bl, bl
mov rbx, qword [rsp + 0xc0]
jne 0x18001242b
call fcn.18002e2e0
jmp 0x18001243f
inc dword [rsi + 0x5e58]
mov al, 1
jmp 0x180012441
xor r14d, r14d
mov dword [rcx + 0x4a30], r14d
xor al, al
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.1800c0060
lea r11, [rsp + 0xa0]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret