Function at 0x140074b60
Capabilities:
Hash data with crc32

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], rbx
push rbp
push r14
push r15
lea rbp, [r11 - 0x5f]
sub rsp, 0xa0
mov rax, qword [0x1401e71c0]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov r9, qword [0x1401ebdf0]
mov ebx, r8d
mov r15, rdx
mov r10d, ecx
movsxd rax, dword [r9 + 0x4c28]
cmp dword [r9 + 0x4c18], eax
jle 0x140075022
imul rcx, rax, 0x38
mov rax, qword [r9 + 0x4c20]
cmp dword [rcx + rax], r10d
jne 0x140075022
movss xmm1, dword [rdx + 8]
xor r14d, r14d
mov ecx, dword [r9 + 0x4b18]
mov qword [r11 + 8], rsi
mov qword [r11 + 0x18], rdi
movaps xmmword [r11 - 0x28], xmm6
xorps xmm6, xmm6
subss xmm1, dword [rdx]
test cl, 0x10
je 0x140074c01
movss xmm0, dword [r9 + 0x4b5c]
maxss xmm0, xmm1
movss dword [r9 + 0x4b5c], xmm0
jmp 0x140074d07
mov eax, ebx
or ebx, 4
test al, 0x1e
mov eax, 0xffffffff
cmovne ebx, r8d
test bl, 4
je 0x140074c1d
mov eax, 8
jmp 0x140074c34
test bl, 2
je 0x140074c29
mov eax, 4
jmp 0x140074c34
test bl, 8
mov edx, 0x14
cmovne eax, edx
movss xmm5, dword [0x1401b9a7c]
mov edx, ecx
xorps xmm4, xmm4
movaps xmm3, xmm5
and edx, 2
je 0x140074c53
comiss xmm6, dword [r9 + 0x4b3c]
jb 0x140074c5f
movss dword [rbp - 0x19], xmm1
movaps xmm4, xmm1
test edx, edx
je 0x140074c69
comiss xmm6, dword [r9 + 0x4b40]
jb 0x140074ca7
test eax, eax
jg 0x140074c72
movaps xmm3, xmm5
jmp 0x140074ca7
movss xmm1, dword [r9 + 0x3a50]
movss xmm2, dword [r9 + 0x3a0c]
movaps xmm3, xmm1
addss xmm3, dword [r9 + 0x3e80]
movd xmm0, eax
addss xmm2, xmm2
cvtdq2ps xmm0, xmm0
mulss xmm3, xmm0
subss xmm3, xmm1
addss xmm3, xmm2
movaps xmm0, xmm4
or ecx, 0x10
unpcklps xmm0, xmm6
movaps xmm1, xmm5
movaps xmm2, xmm0
mov dword [r9 + 0x4b18], ecx
movss dword [r9 + 0x4b5c], xmm4
movsd qword [rbp - 0x19], xmm2
shufps xmm0, xmm0, 0x55
movss dword [r9 + 0x4b60], xmm0
unpcklps xmm1, xmm3
movss dword [r9 + 0x4b64], xmm1
movaps xmm0, xmm1
shufps xmm0, xmm0, 0x55
movsd qword [rbp - 0x19], xmm1
movss dword [r9 + 0x4b68], xmm0
mov qword [r9 + 0x4b70], r14
mov qword [r9 + 0x4b78], r14
mov r9d, dword [r9 + 0x4c28]
lea r8, str.Combo__02d
mov edx, 0x10
lea rcx, [rbp + 0x17]
call fcn.1400226d0
movzx r9d, byte [rbp + 0x17]
lea r8, [rbp + 0x18]
mov r10d, 0xffffffff
mov edx, r10d
test r9b, r9b
je 0x140074d71
lea r11, [0x1401a42f0]
cmp r9b, 0x23
jne 0x140074d54
cmp byte [r8], r9b
jne 0x140074d54
cmp byte [r8 + 1], r9b
cmove edx, r10d
movzx ecx, dl
movzx eax, r9b
movzx r9d, byte [r8]
xor rcx, rax
shr edx, 8
inc r8
xor edx, dword [r11 + rcx*4]
test r9b, r9b
jne 0x140074d41
mov rdi, qword [0x1401ebdf0]
not edx
lea rcx, [rdi + 0x4138]
call fcn.140023230
mov rsi, rax
test rax, rax
je 0x140074e80
cmp byte [rax + 0xf4], r14b
je 0x140074e80
lea r8, [rbp - 9]
mov qword [rbp - 9], r14
lea rdx, [rbp - 0x19]
mov rcx, rax
call fcn.14002cb40
mov rdx, rcx
lea r8, [rbp - 9]
lea rcx, [rbp - 1]
call fcn.14002cc60
lea r8, [rbp - 1]
mov rdx, rsi
lea rcx, [rbp - 0x19]
call fcn.14002c9d0
mov eax, 3
lea rcx, [rbp + 7]
test bl, 1
mov rdx, rsi
cmovne eax, r14d
mov dword [rsi + 0x114], eax
call fcn.140038000
movss xmm0, dword [r15]
lea rax, [rbp + 7]
movss xmm1, dword [r15 + 0xc]
lea r9, [rsi + 0x114]
mov dword [rsp + 0x30], 1
lea r8, [rbp - 0x19]
mov qword [rsp + 0x28], r15
lea rdx, [rbp - 9]
lea rcx, [rbp - 1]
movss dword [rbp - 9], xmm0
movss dword [rbp - 5], xmm1
mov qword [rsp + 0x20], rax
call fcn.140037c90
mov rdi, qword [0x1401ebdf0]
movss xmm1, dword [rbp - 1]
movss xmm0, dword [rbp + 3]
addss xmm1, xmm6
addss xmm0, dword [0x1401b98f0]
or dword [rdi + 0x4b18], 1
mov qword [rdi + 0x4b34], r14
mov dword [rdi + 0x4b1c], 1
movss dword [rdi + 0x4b2c], xmm1
movss dword [rdi + 0x4b30], xmm0
mov byte [rdi + 0x4b58], 1
movss xmm1, dword [rdi + 0x3a08]
lea rcx, [rdi + 0x4bc8]
movss xmm0, dword [rdi + 0x3a0c]
lea rdx, [rbp - 0x19]
movss dword [rbp - 0x15], xmm1
movss dword [rbp - 0x11], xmm0
mov dword [rbp - 0x19], 2
call fcn.14004aa70
movss xmm1, dword [0x1401b98c0]
mov ecx, 9
mov dword [rdi + 0x3a08], 0x40a00000
mov dword [rdi + 0x3a0c], 0x40a00000
call fcn.140023760
movss xmm1, dword [0x1401efe5c]
lea rcx, [rbp - 0x19]
movss xmm0, dword [0x1401efe58]
mov rax, qword [0x1401ebdf0]
movss dword [rbp - 0x15], xmm1
movss xmm1, dword [0x1401efe64]
movss dword [rbp - 0x19], xmm0
mulss xmm1, dword [rax + 0x3a00]
movss xmm0, dword [0x1401efe60]
movss dword [rbp - 0x11], xmm0
movss dword [rbp - 0xd], xmm1
call fcn.140022ea0
mov edx, eax
mov ecx, 4
call fcn.140023600
movss xmm1, dword [0x1401effbc]
lea rcx, [rbp - 0x19]
movss xmm0, dword [0x1401effb8]
mov rax, qword [0x1401ebdf0]
movss dword [rbp - 0x15], xmm1
movss xmm1, dword [0x1401effc4]
movss dword [rbp - 0x19], xmm0
mulss xmm1, dword [rax + 0x3a00]
movss xmm0, dword [0x1401effc0]
movss dword [rbp - 0x11], xmm0
movss dword [rbp - 0xd], xmm1
call fcn.140022ea0
mov edx, eax
mov ecx, 5
call fcn.140023600
xor edx, edx
lea rcx, [rbp + 0x17]
mov r8d, 0x4000147
call fcn.14002f4a0
mov r9, qword [0x1401ebdf0]
mov ecx, 2
movaps xmm6, xmmword [rsp + 0x90]
movzx ebx, al
mov rdi, qword [rsp + 0xd0]
mov rsi, qword [rsp + 0xc0]
mov edx, dword [r9 + 0x4bb8]
cmp edx, ecx
jge 0x140074fd0
mov ecx, edx
test edx, edx
jle 0x140075009
movsxd rax, edx
dec ecx
mov rdx, qword [r9 + 0x4bc0]
lea r8, [rax + rax*4]
movsxd rax, dword [rdx + r8*4 - 0x14]
movups xmm0, xmmword [rdx + r8*4 - 0x10]
add rax, rax
movups xmmword [r9 + rax*8 + 0x3ae8], xmm0
dec dword [r9 + 0x4bb8]
mov edx, dword [r9 + 0x4bb8]
test ecx, ecx
jg 0x140074fd0
mov ecx, 2
call fcn.140023870
test bl, bl
jne 0x14007501e
call fcn.140037b80
jmp 0x14007502c
mov al, 1
jmp 0x14007502e
xor r14d, r14d
mov dword [r9 + 0x4b18], r14d
xor al, al
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.140167530
mov rbx, qword [rsp + 0xd8]
add rsp, 0xa0
pop r15
pop r14
pop rbp
ret