Function at 0x1400bb452
Capabilities:
Hash data with crc32

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x268
movaps xmmword [rsp + 0x250], xmm10
movaps xmmword [rsp + 0x240], xmm9
movdqa xmmword [rsp + 0x230], xmm8
movaps xmmword [rsp + 0x220], xmm7
movaps xmmword [rsp + 0x210], xmm6
mov edi, ecx
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x38], r8
cmp r8, 0x80
jae 0x1400bb4ad
mov ecx, edi
jmp 0x1400bb7c7
lea rbx, [rsp + 0xe0]
lea rsi, [rsp + 0x30]
mov rcx, rbx
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::hf824bf29c8439851
lea r14, [rsp + 0xf0]
mov rcx, r14
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::hf824bf29c8439851
lea r15, [rsp + 0x100]
mov rcx, r15
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::hf824bf29c8439851
lea r12, [rsp + 0x110]
mov rcx, r12
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::hf824bf29c8439851
not edi
movd xmm8, edi
pxor xmm8, xmmword [rbx]
movaps xmm10, xmmword [r14]
movaps xmm7, xmmword [r15]
movaps xmm6, xmmword [r12]
lea rbx, [rsp + 0x1d0]
movaps xmm9, xmmword [0x1404ed520]
lea r14, [rsp + 0x20]
lea r13, [rsp + 0x1e0]
lea r12, [rsp + 0x1f0]
lea rbp, [rsp + 0x200]
lea r15, [rsp + 0xd0]
mov rdi, qword [rsp + 0x38]
cmp rdi, 0x3f
jbe 0x1400bb645
mov rcx, rbx
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::hf824bf29c8439851
movdqa xmmword [rsp + 0x60], xmm8
movaps xmmword [rsp + 0x70], xmm9
mov rcx, r14
lea rdx, [rsp + 0x60]
mov r8, rbx
lea r9, [rsp + 0x70]
call sym.crc32fast::specialized::pclmulqdq::reduce128::h5277caed50c843d8
movdqa xmm8, xmmword [rsp + 0x20]
mov rcx, r13
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::hf824bf29c8439851
movaps xmmword [rsp + 0x80], xmm10
movaps xmmword [rsp + 0x90], xmm9
mov rcx, r14
lea rdx, [rsp + 0x80]
mov r8, r13
lea r9, [rsp + 0x90]
call sym.crc32fast::specialized::pclmulqdq::reduce128::h5277caed50c843d8
movaps xmm10, xmmword [rsp + 0x20]
mov rcx, r12
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::hf824bf29c8439851
movaps xmmword [rsp + 0xa0], xmm7
movaps xmmword [rsp + 0xb0], xmm9
mov rcx, r14
lea rdx, [rsp + 0xa0]
mov r8, r12
lea r9, [rsp + 0xb0]
call sym.crc32fast::specialized::pclmulqdq::reduce128::h5277caed50c843d8
movaps xmm7, xmmword [rsp + 0x20]
mov rcx, rbp
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::hf824bf29c8439851
movaps xmmword [rsp + 0xc0], xmm6
movaps xmmword [rsp + 0xd0], xmm9
mov rcx, r14
lea rdx, [rsp + 0xc0]
mov r8, rbp
mov r9, r15
call sym.crc32fast::specialized::pclmulqdq::reduce128::h5277caed50c843d8
movaps xmm6, xmmword [rsp + 0x20]
jmp 0x1400bb54c
lea rdx, [rsp + 0x130]
movdqa xmmword [rdx], xmm8
lea r8, [rsp + 0x140]
movaps xmmword [r8], xmm10
movdqa xmm8, xmmword [0x1404ed4f0]
lea r9, [rsp + 0x150]
movdqa xmmword [r9], xmm8
lea rsi, [rsp + 0x120]
mov rcx, rsi
call sym.crc32fast::specialized::pclmulqdq::reduce128::h5277caed50c843d8
movaps xmm0, xmmword [rsi]
lea rdx, [rsp + 0x160]
movaps xmmword [rdx], xmm0
lea r8, [rsp + 0x170]
movaps xmmword [r8], xmm7
lea r9, [rsp + 0x180]
movdqa xmmword [r9], xmm8
lea rsi, [rsp + 0x20]
mov rcx, rsi
call sym.crc32fast::specialized::pclmulqdq::reduce128::h5277caed50c843d8
movaps xmm0, xmmword [rsi]
lea rdx, [rsp + 0x190]
movaps xmmword [rdx], xmm0
lea r8, [rsp + 0x1a0]
movaps xmmword [r8], xmm6
lea r9, [rsp + 0x1b0]
movdqa xmmword [r9], xmm8
lea rbx, [rsp + 0x20]
mov rcx, rbx
call sym.crc32fast::specialized::pclmulqdq::reduce128::h5277caed50c843d8
movdqa xmm6, xmmword [rbx]
lea rbx, [rsp + 0x1c0]
lea r14, [rsp + 0x30]
lea r15, [rsp + 0x40]
lea r12, [rsp + 0x50]
cmp rdi, 0xf
jbe 0x1400bb742
mov rcx, rbx
mov rdx, r14
call sym.crc32fast::specialized::pclmulqdq::get::hf824bf29c8439851
movdqa xmmword [rsp + 0x40], xmm6
movdqa xmmword [rsp + 0x50], xmm8
mov rcx, rsi
mov rdx, r15
mov r8, rbx
mov r9, r12
call sym.crc32fast::specialized::pclmulqdq::reduce128::h5277caed50c843d8
movaps xmm6, xmmword [rsp + 0x20]
mov rdi, qword [rsp + 0x38]
jmp 0x1400bb707
movdqa xmm0, xmmword [0x1404ed500]
pclmulqdq xmm0, xmm6, 1
psrldq xmm6, 8
pxor xmm6, xmm0
pxor xmm0, xmm0
xorps xmm1, xmm1
movss xmm1, xmm6
movabs rax, 0x163cd6124
movq xmm2, rax
pclmulqdq xmm2, xmm1, 0
psrldq xmm6, 4
pxor xmm6, xmm2
xorps xmm1, xmm1
movss xmm1, xmm6
pclmulqdq xmm1, xmmword [0x1404ed510], 0x10
pblendw xmm1, xmm0, 0xfc
movabs rax, 0x1db710641
movq xmm0, rax
pclmulqdq xmm0, xmm1, 0
pxor xmm0, xmm6
pextrd ecx, xmm0, 1
not ecx
test rdi, rdi
je 0x1400bb80a
mov rdx, qword [rsp + 0x30]
mov r8, rdi
movaps xmm6, xmmword [rsp + 0x210]
movaps xmm7, xmmword [rsp + 0x220]
movaps xmm8, xmmword [rsp + 0x230]
movaps xmm9, xmmword [rsp + 0x240]
movaps xmm10, xmmword [rsp + 0x250]
add rsp, 0x268
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp sym.crc32fast::baseline::update_fast_16::h439fb1143bf86722
mov eax, ecx
movaps xmm6, xmmword [rsp + 0x210]
movaps xmm7, xmmword [rsp + 0x220]
movaps xmm8, xmmword [rsp + 0x230]
movaps xmm9, xmmword [rsp + 0x240]
movaps xmm10, xmmword [rsp + 0x250]
add rsp, 0x268
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret