Function at 0x140045910
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 rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
mov rdi, qword [0x1402ff138]
xor ebx, ebx
vmovaps xmmword [rax - 0x68], xmm7
vmovaps xmmword [rax - 0x78], xmm8
vmovaps xmmword [rsp + 0x70], xmm9
mov rax, qword [rdi + 0x4140]
mov byte [rax + 0xf5], 1
mov r14, qword [rdi + 0x4140]
mov r12d, dword [rdi + 0x4b40]
mov dword [rdi + 0x4b40], ebx
cmp byte [r14 + 0xf8], bl
jne 0x140045dc2
lea r13, [0x1401440d4]
mov rcx, r14
mov rdx, r13
call fcn.140012f00
mov r8, qword [0x1402ff138]
mov r15d, eax
mov rcx, r13
vmovss xmm0, dword [r8 + 0x3a38]
vaddss xmm1, xmm0, xmm0
vaddss xmm9, xmm1, dword [r8 + 0x3e78]
cmp r13, 0xffffffffffffffff
jae 0x1400459d5
movzx edx, byte [rcx]
test dl, dl
je 0x1400459d5
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x1400459cc
cmp byte [rax], dl
je 0x1400459d5
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x1400459b8
vmovss xmm1, dword [r8 + 0x3e78]
vxorps xmm7, xmm7, xmm7
cmp r13, rcx
jne 0x1400459ee
vxorps xmm8, xmm8, xmm8
jmp 0x140045a46
vmovss xmm0, dword [0x140149ef4]
vmovss xmm3, dword [0x140149ebc]
mov qword [rsp + 0x38], rbx
lea rdx, [rbp + 0x67]
mov qword [rsp + 0x30], rcx
mov rcx, qword [r8 + 0x3e70]
mov qword [rsp + 0x28], r13
vmovaps xmm2, xmm1
vmovss dword [rsp + 0x20], xmm0
call fcn.1400396e0
vmovss xmm0, dword [rbp + 0x67]
vaddss xmm1, xmm0, dword [0x140149dbc]
vcvttss2si eax, xmm1
vmovss xmm1, dword [rbp + 0x6b]
vxorps xmm8, xmm8, xmm8
vcvtsi2ss xmm8, xmm8, eax
vcomiss xmm8, xmm7
vmovss xmm2, dword [r14 + 0x140]
vmovss xmm3, dword [rdi + 0x3a38]
vaddss xmm0, xmm3, dword [r14 + 0x144]
vaddss xmm1, xmm3, xmm1
vaddss xmm4, xmm1, xmm0
vmovss dword [rbp - 0x49], xmm2
vmovss xmm1, dword [r14 + 0x144]
vaddss xmm5, xmm2, xmm9
vmovss dword [rbp - 0x45], xmm1
vmovss dword [rbp - 0x41], xmm5
vmovss dword [rbp - 0x3d], xmm4
jbe 0x140045a9a
vaddss xmm0, xmm8, dword [rdi + 0x3a4c]
jmp 0x140045a9e
vxorps xmm0, xmm0, xmm0
vaddss xmm0, xmm5, xmm0
vmovss dword [rbp - 0x51], xmm0
vsubss xmm0, xmm0, xmm2
vmovss dword [rbp - 0x59], xmm2
vsubss xmm2, xmm4, xmm1
vmovss dword [rbp - 0x55], xmm1
vmovaps xmm1, xmm3
lea rcx, [rbp + 0x67]
vmovss dword [rbp + 0x6b], xmm2
vmovss dword [rbp - 0x4d], xmm4
vmovss dword [rbp + 0x67], xmm0
call fcn.140016210
lea r8, [rbp - 0x49]
mov edx, r15d
lea rcx, [rbp - 0x59]
xor r9d, r9d
call fcn.140015f90
test al, al
je 0x140045dc2
mov qword [rsp + 0xb8], rsi
lea r9, [rbp + 0x6f]
lea r8, [rbp + 0x77]
vmovaps xmmword [rsp + 0xa0], xmm6
mov edx, r15d
mov dword [rsp + 0x20], ebx
lea rcx, [rbp - 0x49]
call fcn.140041ef0
mov r9d, r15d
lea rdx, [0x140144971]
not r9d
lea r11, [0x14013f300]
mov ebx, r9d
movzx r10d, al
mov r8b, 0x23
cmp r8b, 0x23
jne 0x140045b4a
cmp byte [rdx], r8b
jne 0x140045b4a
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 0x140045b37
mov rdx, qword [0x1402ff138]
not ebx
movsxd rax, dword [rdx + 0x4c58]
cmp dword [rdx + 0x4c48], eax
jle 0x140045b94
imul rcx, rax, 0x38
mov rax, qword [rdx + 0x4c50]
cmp dword [rcx + rax], ebx
jne 0x140045b94
mov sil, 1
jmp 0x140045b97
xor sil, sil
test r10b, r10b
je 0x140045bcd
test sil, sil
jne 0x140045bcd
xor edx, edx
mov ecx, ebx
call fcn.140017550
vmovss xmm0, dword [rbp - 0x41]
vsubss xmm1, xmm0, xmm9
vmaxss xmm6, xmm1, dword [rbp - 0x49]
xor r8d, r8d
lea rcx, [rbp - 0x49]
mov edx, r15d
mov sil, 1
call fcn.140005ea0
jmp 0x140045bfb
vmovss xmm0, dword [rbp - 0x41]
vsubss xmm1, xmm0, xmm9
vmaxss xmm6, xmm1, dword [rbp - 0x49]
xor r8d, r8d
lea rcx, [rbp - 0x49]
mov edx, r15d
call fcn.140005ea0
test sil, sil
jne 0x140045bfb
mov ecx, 0x238
cmp byte [rbp + 0x77], sil
je 0x140045c00
mov ecx, 0x248
mov rax, qword [0x1402ff138]
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.140003e00
vmovss xmm0, dword [rdi + 0x3a3c]
mov rcx, qword [r14 + 0x2e0]
lea r8, [rbp - 0x41]
mov r9d, eax
mov dword [rsp + 0x28], 0xf0
lea rdx, [rbp + 0x67]
vmovss dword [rsp + 0x20], xmm0
call fcn.140034d20
vaddss xmm0, xmm6, xmm9
vsubss xmm1, xmm0, dword [rdi + 0x3a34]
vcomiss xmm1, dword [rbp - 0x41]
ja 0x140045d4c
vmovss xmm1, dword [rdi + 0x3a38]
vaddss xmm2, xmm1, dword [rbp - 0x45]
mov r10, qword [r14 + 0x2e0]
lea rcx, [rbp - 0x39]
vaddss xmm3, xmm1, xmm6
mov rax, qword [r10 + 0x38]
vmovss xmm4, dword [rax + 0x10]
vfmadd231ss xmm3, xmm4, dword [0x140149d7c]
vfmadd231ss xmm2, xmm4, dword [0x140149d7c]
vmovaps xmm0, xmm3
vfmadd231ss xmm0, xmm4, dword [0x140149d60]
vmovss dword [rbp + 0x67], xmm0
vmovaps xmm0, xmm3
vfmadd231ss xmm0, xmm4, dword [0x140149edc]
vmovss dword [rbp + 0x7f], xmm0
vmovaps xmm0, xmm2
vfmadd231ss xmm0, xmm4, dword [0x140149d54]
vmovaps xmm1, xmm2
vfmadd231ss xmm1, xmm4, dword [0x140149ed4]
vmovss dword [rbp - 0x55], xmm0
vmovss dword [rbp + 0x6b], xmm1
vmovss dword [rbp + 0x83], xmm1
vmovss dword [rbp - 0x59], xmm3
call fcn.140003e00
lea rdx, [rbp - 0x59]
mov dword [rsp + 0x20], eax
lea r9, [rbp + 0x67]
mov rcx, r10
lea r8, [rbp + 0x7f]
call fcn.1400350b0
vmovss xmm2, dword [rdi + 0x3a3c]
mov rdx, qword [rbp - 0x41]
mov rcx, qword [rbp - 0x49]
call fcn.140005d60
vcomiss xmm8, xmm7
vmovaps xmm6, xmmword [rsp + 0xa0]
jbe 0x140045da1
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
xor r8d, r8d
mov rdx, r13
call fcn.140004b30
test sil, sil
mov rsi, qword [rsp + 0xb8]
je 0x140045dc2
lea rdx, [rbp - 0x49]
mov dword [rdi + 0x4b40], r12d
mov ecx, ebx
call fcn.140045df0
jmp 0x140045dc4
xor al, al
lea r11, [rsp + 0xc0]
vmovaps xmm7, xmmword [r11 - 0x30]
vmovaps xmm8, xmmword [r11 - 0x40]
vmovaps xmm9, xmmword [r11 - 0x50]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rbx
pop rbp
ret