Function at 0x140050bda
Capabilities:
Hash data with crc32

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x258
movaps xmmword [rsp + 0x240], xmm10
movaps xmmword [rsp + 0x230], xmm9
movdqa xmmword [rsp + 0x220], xmm8
movaps xmmword [rsp + 0x210], xmm7
movaps xmmword [rsp + 0x200], xmm6
mov edi, ecx
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x38], r8
cmp r8, 0x80
jae 0x140050c35
mov ecx, edi
jmp 0x140050f3c
lea rbx, [rsp + 0xe0]
lea rsi, [rsp + 0x30]
mov rcx, rbx
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::h6f104cc6ef859ef4
lea r14, [rsp + 0xf0]
mov rcx, r14
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::h6f104cc6ef859ef4
lea r15, [rsp + 0x100]
mov rcx, r15
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::h6f104cc6ef859ef4
lea r12, [rsp + 0x110]
mov rcx, r12
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::h6f104cc6ef859ef4
not edi
movd xmm8, edi
pxor xmm8, xmmword [rbx]
movaps xmm10, xmmword [r14]
movaps xmm7, xmmword [r15]
movaps xmm6, xmmword [r12]
lea rbx, [rsp + 0x1c0]
movaps xmm9, xmmword [0x14010f8f0]
lea r14, [rsp + 0x20]
lea r13, [rsp + 0x1d0]
lea r12, [rsp + 0x1e0]
lea rbp, [rsp + 0x1f0]
lea r15, [rsp + 0xd0]
mov rdi, qword [rsp + 0x38]
cmp rdi, 0x3f
jbe 0x140050dcd
mov rcx, rbx
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::h6f104cc6ef859ef4
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::haf0bacaf81f4ade4
movdqa xmm8, xmmword [rsp + 0x20]
mov rcx, r13
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::h6f104cc6ef859ef4
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::haf0bacaf81f4ade4
movaps xmm10, xmmword [rsp + 0x20]
mov rcx, r12
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::h6f104cc6ef859ef4
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::haf0bacaf81f4ade4
movaps xmm7, xmmword [rsp + 0x20]
mov rcx, rbp
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::get::h6f104cc6ef859ef4
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::haf0bacaf81f4ade4
movaps xmm6, xmmword [rsp + 0x20]
jmp 0x140050cd4
lea rdx, [rsp + 0x120]
movdqa xmmword [rdx], xmm8
lea r8, [rsp + 0x130]
movaps xmmword [r8], xmm10
movdqa xmm8, xmmword [0x14010f8c0]
lea r9, [rsp + 0x140]
movdqa xmmword [r9], xmm8
lea rsi, [rsp + 0x150]
mov rcx, rsi
call sym.crc32fast::specialized::pclmulqdq::reduce128::haf0bacaf81f4ade4
lea r8, [rsp + 0x160]
movaps xmmword [r8], xmm7
lea r9, [rsp + 0x170]
movdqa xmmword [r9], xmm8
lea rbx, [rsp + 0x180]
mov rcx, rbx
mov rdx, rsi
call sym.crc32fast::specialized::pclmulqdq::reduce128::haf0bacaf81f4ade4
lea r8, [rsp + 0x190]
movaps xmmword [r8], xmm6
lea r9, [rsp + 0x1a0]
movdqa xmmword [r9], xmm8
lea rsi, [rsp + 0x20]
mov rcx, rsi
mov rdx, rbx
call sym.crc32fast::specialized::pclmulqdq::reduce128::haf0bacaf81f4ade4
movdqa xmm6, xmmword [rsi]
lea rbx, [rsp + 0x1b0]
lea r14, [rsp + 0x30]
lea r15, [rsp + 0x40]
lea r12, [rsp + 0x50]
cmp rdi, 0xf
jbe 0x140050eb7
mov rcx, rbx
mov rdx, r14
call sym.crc32fast::specialized::pclmulqdq::get::h6f104cc6ef859ef4
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::haf0bacaf81f4ade4
movaps xmm6, xmmword [rsp + 0x20]
mov rdi, qword [rsp + 0x38]
jmp 0x140050e7c
movdqa xmm0, xmmword [0x14010f8d0]
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 [0x14010f8e0], 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 0x140050f7f
mov rdx, qword [rsp + 0x30]
mov r8, rdi
movaps xmm6, xmmword [rsp + 0x200]
movaps xmm7, xmmword [rsp + 0x210]
movaps xmm8, xmmword [rsp + 0x220]
movaps xmm9, xmmword [rsp + 0x230]
movaps xmm10, xmmword [rsp + 0x240]
add rsp, 0x258
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp sym.crc32fast::baseline::update_fast_16::h2e87ecd91f098429
mov eax, ecx
movaps xmm6, xmmword [rsp + 0x200]
movaps xmm7, xmmword [rsp + 0x210]
movaps xmm8, xmmword [rsp + 0x220]
movaps xmm9, xmmword [rsp + 0x230]
movaps xmm10, xmmword [rsp + 0x240]
add rsp, 0x258
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret