Function at 0x140045270
Capabilities:
Hash data with crc32

Disassembly:
mov rax, rsp
mov dword [rax + 0x18], r8d
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
mov rdi, qword [0x1402f8248]
xor esi, esi
vmovaps xmmword [rax - 0x58], xmm6
vmovaps xmmword [rax - 0x68], xmm7
vmovaps xmmword [rax - 0x78], xmm8
mov rax, qword [rdi + 0x4140]
vmovaps xmmword [rsp + 0x70], xmm9
mov byte [rax + 0xf5], 1
mov r15, qword [rdi + 0x4140]
mov r13d, dword [rdi + 0x4b40]
mov dword [rdi + 0x4b40], esi
cmp byte [r15 + 0xf8], sil
jne 0x140045717
lea rbx, [0x14013dbd4]
mov rcx, r15
mov rdx, rbx
call fcn.140013240
mov r8, qword [0x1402f8248]
mov r12d, eax
mov rcx, rbx
vmovss xmm0, dword [r8 + 0x3a38]
vaddss xmm1, xmm0, xmm0
vaddss xmm9, xmm1, dword [r8 + 0x3e78]
cmp rbx, 0xffffffffffffffff
jae 0x14004533d
nop dword [rax]
movzx edx, byte [rcx]
test dl, dl
je 0x14004533d
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x140045334
cmp byte [rax], dl
je 0x14004533d
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x140045320
vmovss xmm2, dword [r8 + 0x3e78]
vxorps xmm7, xmm7, xmm7
cmp rbx, rcx
jne 0x140045356
vxorps xmm8, xmm8, xmm8
jmp 0x1400453aa
vmovss xmm0, dword [0x140144370]
vmovss xmm3, dword [0x140144334]
mov qword [rsp + 0x38], rsi
lea rdx, [rbp + 0x67]
mov qword [rsp + 0x30], rcx
mov rcx, qword [r8 + 0x3e70]
mov qword [rsp + 0x28], rbx
vmovss dword [rsp + 0x20], xmm0
call fcn.140039110
vmovss xmm0, dword [rbp + 0x67]
vaddss xmm1, xmm0, dword [0x14014423c]
vmovss xmm2, dword [rbp + 0x6b]
vcvttss2si eax, xmm1
vxorps xmm8, xmm8, xmm8
vcvtsi2ss xmm8, xmm8, eax
vcomiss xmm8, xmm7
vmovss xmm3, dword [r15 + 0x140]
vmovss xmm4, dword [rdi + 0x3a38]
vaddss xmm1, xmm4, dword [r15 + 0x144]
vaddss xmm0, xmm4, xmm2
vaddss xmm5, xmm1, xmm0
vmovss dword [rbp - 0x49], xmm3
vmovss xmm1, dword [r15 + 0x144]
vaddss xmm6, xmm3, xmm9
vmovss dword [rbp - 0x45], xmm1
vmovss dword [rbp - 0x41], xmm6
vmovss dword [rbp - 0x3d], xmm5
jbe 0x1400453fe
vaddss xmm0, xmm8, dword [rdi + 0x3a4c]
jmp 0x140045402
vxorps xmm0, xmm0, xmm0
vaddss xmm0, xmm6, xmm0
vsubss xmm2, xmm5, xmm1
vmovss dword [rbp - 0x51], xmm0
vsubss xmm0, xmm0, xmm3
vmovss dword [rbp - 0x55], xmm1
vmovaps xmm1, xmm4
lea rcx, [rbp + 0x67]
vmovss dword [rbp + 0x67], xmm0
vmovss dword [rbp - 0x59], xmm3
vmovss dword [rbp - 0x4d], xmm5
vmovss dword [rbp + 0x6b], xmm2
call fcn.1400164d0
lea r8, [rbp - 0x49]
mov edx, r12d
lea rcx, [rbp - 0x59]
xor r9d, r9d
call fcn.140016250
test al, al
je 0x140045717
lea r9, [rbp + 0x6f]
mov qword [rsp + 0xb8], r14
lea r8, [rbp + 0x77]
mov dword [rsp + 0x20], esi
mov edx, r12d
lea rcx, [rbp - 0x49]
call fcn.140041840
mov r9d, r12d
lea rdx, [0x14013e471]
not r9d
lea r11, [0x140139480]
mov ebx, r9d
movzx r10d, al
mov r8b, 0x23
cmp r8b, 0x23
jne 0x1400454a5
cmp byte [rdx], r8b
jne 0x1400454a5
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 [r11 + rcx*4]
test r8b, r8b
jne 0x140045492
mov rdx, qword [0x1402f8248]
not ebx
movsxd rax, dword [rdx + 0x4c58]
cmp dword [rdx + 0x4c48], eax
jle 0x1400454ed
imul rcx, rax, 0x38
mov rax, qword [rdx + 0x4c50]
cmp dword [rcx + rax], ebx
jne 0x1400454ed
mov sil, 1
test r10b, r10b
je 0x140045523
test sil, sil
jne 0x140045523
xor edx, edx
mov ecx, ebx
call fcn.140017820
vmovss xmm0, dword [rbp - 0x41]
vsubss xmm1, xmm0, xmm9
vmaxss xmm6, xmm1, dword [rbp - 0x49]
xor r8d, r8d
lea rcx, [rbp - 0x49]
mov edx, r12d
mov r14b, 1
call fcn.1400061e0
jmp 0x140045555
vmovss xmm0, dword [rbp - 0x41]
vsubss xmm1, xmm0, xmm9
vmaxss xmm6, xmm1, dword [rbp - 0x49]
xor r8d, r8d
lea rcx, [rbp - 0x49]
mov edx, r12d
call fcn.1400061e0
movzx r14d, sil
test sil, sil
jne 0x140045555
mov ecx, 0x238
cmp byte [rbp + 0x77], sil
je 0x14004555a
mov ecx, 0x248
mov rax, qword [0x1402f8248]
vmovss dword [rbp + 0x67], xmm6
vmovups xmm0, xmmword [rax + rcx + 0x39f8]
vmovss xmm2, dword [rax + 0x39f8]
vmovups xmm1, xmmword [rax + 0x3ae0]
vmovups xmmword [rbp - 0x59], xmm0
vmovups xmmword [rbp - 0x39], xmm1
vshufps xmm0, xmm0, xmm0, 0xff
vmulss xmm0, xmm0, xmm2
vshufps xmm1, xmm1, xmm1, 0xff
vmovss dword [rbp - 0x4d], xmm0
vmulss xmm0, xmm1, xmm2
vmovss xmm1, dword [rbp - 0x45]
lea rcx, [rbp - 0x59]
vmovss dword [rbp + 0x6b], xmm1
vmovss dword [rbp - 0x2d], xmm0
call fcn.140004140
vmovss xmm0, dword [rdi + 0x3a3c]
mov rcx, qword [r15 + 0x2e0]
lea r8, [rbp - 0x41]
mov r9d, eax
mov dword [rsp + 0x28], 0xf0
lea rdx, [rbp + 0x67]
vmovss dword [rsp + 0x20], xmm0
call fcn.140034af0
vaddss xmm0, xmm6, xmm9
vsubss xmm1, xmm0, dword [rdi + 0x3a34]
vcomiss xmm1, dword [rbp - 0x41]
ja 0x1400456a6
vmovss xmm1, dword [rdi + 0x3a38]
vaddss xmm2, xmm1, dword [rbp - 0x45]
mov r10, qword [r15 + 0x2e0]
lea rcx, [rbp - 0x39]
vaddss xmm3, xmm1, xmm6
mov rax, qword [r10 + 0x38]
vmovss xmm4, dword [rax + 0x10]
vfmadd231ss xmm3, xmm4, dword [0x1401441f4]
vfmadd231ss xmm2, xmm4, dword [0x1401441f4]
vmovaps xmm0, xmm3
vfmadd231ss xmm0, xmm4, dword [0x1401441d4]
vmovss dword [rbp + 0x67], xmm0
vmovaps xmm0, xmm3
vfmadd231ss xmm0, xmm4, dword [0x140144358]
vmovss dword [rbp + 0x7f], xmm0
vmovaps xmm0, xmm2
vfmadd231ss xmm0, xmm4, dword [0x1401441c8]
vmovaps xmm1, xmm2
vfmadd231ss xmm1, xmm4, dword [0x140144350]
vmovss dword [rbp - 0x55], xmm0
vmovss dword [rbp + 0x6b], xmm1
vmovss dword [rbp + 0x83], xmm1
vmovss dword [rbp - 0x59], xmm3
call fcn.140004140
lea rdx, [rbp - 0x59]
mov dword [rsp + 0x20], eax
lea r9, [rbp + 0x67]
mov rcx, r10
lea r8, [rbp + 0x7f]
call fcn.140034e80
vmovss xmm2, dword [rdi + 0x3a3c]
mov rdx, qword [rbp - 0x41]
mov rcx, qword [rbp - 0x49]
call fcn.1400060a0
vcomiss xmm8, xmm7
jbe 0x1400456f6
vmovss xmm0, dword [rbp - 0x41]
vmovss xmm1, dword [rbp - 0x45]
vaddss xmm3, xmm0, dword [rdi + 0x3a4c]
vaddss xmm2, xmm1, dword [rdi + 0x3a38]
vunpcklps xmm0, xmm3, xmm2
vmovq rcx, xmm0
mov r9b, 1
lea rdx, [0x14013dbd4]
xor r8d, r8d
call fcn.140004e60
test r14b, r14b
mov r14, qword [rsp + 0xb8]
je 0x140045717
lea rdx, [rbp - 0x49]
mov dword [rdi + 0x4b40], r13d
mov ecx, ebx
call fcn.140045750
jmp 0x140045719
xor al, al
lea r11, [rsp + 0xc0]
vmovaps xmm6, xmmword [r11 - 0x20]
vmovaps xmm7, xmmword [r11 - 0x30]
vmovaps xmm8, xmmword [r11 - 0x40]
vmovaps xmm9, xmmword [r11 - 0x50]
mov rsp, r11
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret