// File: /workspace/github_c_makefile_star2_O0/svpv[P]rpmset/./base64unpack-simd.h
// Function: unpack21x4c14
static inline bool unpack21x4c14(const char *s, uint32_t *v, unsigned *e)
{
    V32x4 x;
#if VSHLV32_COST >= 2
    if (!unpack6(s - 2, &x)) return false;
    x = VSHUF8(x, V8x16_C(
	    2,  3,  4,  5,  5,  6,  7,  8,
	    9, 10, 11, 12, 12, 13, 14, 15));
    x = glue24(glue12(x));
    x = VBLEND16(VSHR32(x, 3), x, 0x33);
    VSTORE(v, VAND(x, VDUP32(Mask(21))));
#else
    if (!unpack24(s - 2, &x)) return false;
    x = VSHUF8(x, V8x16_C(
	    1, 2,  4,  5,  5,  6,  8, -1,
	    8, 9, 10, 12, 12, 13, 14, 15));
    x = VSHLV32(x, 7, 10, 5, 8);
    VSTORE(v, VSHR32(x, 11));
#endif
    return (void) e, true;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x198, %rsp            # imm = 0x198
movq %rdi, 0x30(%rsp)
movq %rsi, 0x28(%rsp)
movq %rdx, 0x20(%rsp)
movq 0x30(%rsp), %rdi
addq $-0x2, %rdi
leaq 0x10(%rsp), %rsi
callq 0x1bbd0
testb $0x1, %al
jne 0xfcd1
movb $0x0, 0x3f(%rsp)
jmp 0x101ad
vmovdqa 0x10(%rsp), %xmm1
movb $0x2, 0xbf(%rsp)
movb $0x3, 0xbe(%rsp)
movb $0x4, 0xbd(%rsp)
movb $0x5, 0xbc(%rsp)
movb $0x5, 0xbb(%rsp)
movb $0x6, 0xba(%rsp)
movb $0x7, 0xb9(%rsp)
movb $0x8, 0xb8(%rsp)
movb $0x9, 0xb7(%rsp)
movb $0xa, 0xb6(%rsp)
movb $0xb, 0xb5(%rsp)
movb $0xc, 0xb4(%rsp)
movb $0xc, 0xb3(%rsp)
movb $0xd, 0xb2(%rsp)
movb $0xe, 0xb1(%rsp)
movb $0xf, 0xb0(%rsp)
movb 0xb0(%rsp), %al
movb %al, 0xe(%rsp)
movb 0xb1(%rsp), %r13b
movb 0xb2(%rsp), %r12b
movb 0xb3(%rsp), %r15b
movb 0xb4(%rsp), %r14b
movb 0xb5(%rsp), %bpl
movb 0xb6(%rsp), %bl
movb 0xb7(%rsp), %r11b
movb 0xb8(%rsp), %r10b
movb 0xb9(%rsp), %r9b
movb 0xba(%rsp), %r8b
movb 0xbb(%rsp), %dil
movb 0xbc(%rsp), %sil
movb 0xbd(%rsp), %dl
movb 0xbe(%rsp), %cl
movb 0xbf(%rsp), %al
movb %al, 0xf(%rsp)
movb 0xe(%rsp), %al
movb %al, 0x12f(%rsp)
movb 0xf(%rsp), %al
movb %r13b, 0x12e(%rsp)
movb %r12b, 0x12d(%rsp)
movb %r15b, 0x12c(%rsp)
movb %r14b, 0x12b(%rsp)
movb %bpl, 0x12a(%rsp)
movb %bl, 0x129(%rsp)
movb %r11b, 0x128(%rsp)
movb %r10b, 0x127(%rsp)
movb %r9b, 0x126(%rsp)
movb %r8b, 0x125(%rsp)
movb %dil, 0x124(%rsp)
movb %sil, 0x123(%rsp)
movb %dl, 0x122(%rsp)
movb %cl, 0x121(%rsp)
movb %al, 0x120(%rsp)
movzbl 0x120(%rsp), %eax
vmovd %eax, %xmm0
movzbl 0x121(%rsp), %eax
vpinsrb $0x1, %eax, %xmm0, %xmm0
movzbl 0x122(%rsp), %eax
vpinsrb $0x2, %eax, %xmm0, %xmm0
movzbl 0x123(%rsp), %eax
vpinsrb $0x3, %eax, %xmm0, %xmm0
movzbl 0x124(%rsp), %eax
vpinsrb $0x4, %eax, %xmm0, %xmm0
movzbl 0x125(%rsp), %eax
vpinsrb $0x5, %eax, %xmm0, %xmm0
movzbl 0x126(%rsp), %eax
vpinsrb $0x6, %eax, %xmm0, %xmm0
movzbl 0x127(%rsp), %eax
vpinsrb $0x7, %eax, %xmm0, %xmm0
movzbl 0x128(%rsp), %eax
vpinsrb $0x8, %eax, %xmm0, %xmm0
movzbl 0x129(%rsp), %eax
vpinsrb $0x9, %eax, %xmm0, %xmm0
movzbl 0x12a(%rsp), %eax
vpinsrb $0xa, %eax, %xmm0, %xmm0
movzbl 0x12b(%rsp), %eax
vpinsrb $0xb, %eax, %xmm0, %xmm0
movzbl 0x12c(%rsp), %eax
vpinsrb $0xc, %eax, %xmm0, %xmm0
movzbl 0x12d(%rsp), %eax
vpinsrb $0xd, %eax, %xmm0, %xmm0
movzbl 0x12e(%rsp), %eax
vpinsrb $0xe, %eax, %xmm0, %xmm0
movzbl 0x12f(%rsp), %eax
vpinsrb $0xf, %eax, %xmm0, %xmm0
vmovdqa %xmm0, 0x110(%rsp)
vmovdqa 0x110(%rsp), %xmm0
vmovdqa %xmm1, 0xa0(%rsp)
vmovdqa %xmm0, 0x90(%rsp)
vmovdqa 0xa0(%rsp), %xmm0
vmovdqa 0x90(%rsp), %xmm1
vpshufb %xmm1, %xmm0, %xmm0
vmovdqa %xmm0, 0x10(%rsp)
vmovdqa 0x10(%rsp), %xmm1
movl $0x40014001, 0x8c(%rsp) # imm = 0x40014001
movl 0x8c(%rsp), %eax
movl %eax, 0x14c(%rsp)
movl %eax, 0x148(%rsp)
movl %eax, 0x144(%rsp)
movl %eax, 0x140(%rsp)
movl 0x144(%rsp), %edx
movl 0x148(%rsp), %ecx
movl 0x14c(%rsp), %eax
vmovd 0x140(%rsp), %xmm0
vpinsrd $0x1, %edx, %xmm0, %xmm0
vpinsrd $0x2, %ecx, %xmm0, %xmm0
vpinsrd $0x3, %eax, %xmm0, %xmm0
vmovdqa %xmm0, 0x130(%rsp)
vmovdqa 0x130(%rsp), %xmm0
vmovdqa %xmm1, 0x70(%rsp)
vmovdqa %xmm0, 0x60(%rsp)
vmovdqa 0x70(%rsp), %xmm0
vmovdqa 0x60(%rsp), %xmm1
vpmaddubsw %xmm1, %xmm0, %xmm1
movl $0x10000001, 0x88(%rsp) # imm = 0x10000001
movl 0x88(%rsp), %eax
movl %eax, 0x16c(%rsp)
movl %eax, 0x168(%rsp)
movl %eax, 0x164(%rsp)
movl %eax, 0x160(%rsp)
movl 0x164(%rsp), %edx
movl 0x168(%rsp), %ecx
movl 0x16c(%rsp), %eax
vmovd 0x160(%rsp), %xmm0
vpinsrd $0x1, %edx, %xmm0, %xmm0
vpinsrd $0x2, %ecx, %xmm0, %xmm0
vpinsrd $0x3, %eax, %xmm0, %xmm0
vmovdqa %xmm0, 0x150(%rsp)
vmovdqa 0x150(%rsp), %xmm0
vmovdqa %xmm1, 0x50(%rsp)
vmovdqa %xmm0, 0x40(%rsp)
vmovdqa 0x50(%rsp), %xmm0
vmovdqa 0x40(%rsp), %xmm1
vpmaddwd %xmm1, %xmm0, %xmm0
vmovdqa %xmm0, 0x10(%rsp)
vmovdqa 0x10(%rsp), %xmm0
vmovdqa %xmm0, 0xe0(%rsp)
movl $0x3, 0xdc(%rsp)
vmovdqa 0xe0(%rsp), %xmm0
vmovd 0xdc(%rsp), %xmm1
vpsrld %xmm1, %xmm0, %xmm1
vmovdqa 0x10(%rsp), %xmm0
vpblendd $0xa, %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm1[1],xmm0[2],xmm1[3]
vmovdqa %xmm0, 0x10(%rsp)
movq 0x28(%rsp), %rax
vmovdqa 0x10(%rsp), %xmm1
movl $0x1fffff, 0x84(%rsp) # imm = 0x1FFFFF
movl 0x84(%rsp), %ecx
movl %ecx, 0x194(%rsp)
movl %ecx, 0x190(%rsp)
movl %ecx, 0x18c(%rsp)
movl %ecx, 0x188(%rsp)
movl 0x18c(%rsp), %esi
movl 0x190(%rsp), %edx
movl 0x194(%rsp), %ecx
vmovd 0x188(%rsp), %xmm0
vpinsrd $0x1, %esi, %xmm0, %xmm0
vpinsrd $0x2, %edx, %xmm0, %xmm0
vpinsrd $0x3, %ecx, %xmm0, %xmm0
vmovdqa %xmm0, 0x170(%rsp)
vmovdqa 0x170(%rsp), %xmm0
vmovdqa %xmm1, 0x100(%rsp)
vmovdqa %xmm0, 0xf0(%rsp)
vmovdqa 0x100(%rsp), %xmm0
vpand 0xf0(%rsp), %xmm0, %xmm0
movq %rax, 0xd0(%rsp)
vmovdqa %xmm0, 0xc0(%rsp)
vmovdqa 0xc0(%rsp), %xmm0
movq 0xd0(%rsp), %rax
vmovdqu %xmm0, (%rax)
movb $0x1, 0x3f(%rsp)
movb 0x3f(%rsp), %al
andb $0x1, %al
addq $0x198, %rsp            # imm = 0x198
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
nopw %cs:(%rax,%rax)