// File: /workspace/github_c_makefile_star2_O2/svpv[P]rpmset/./base64unpack-scalar.h
// Function: unpack7x24c28
static inline bool unpack7x24c28(const char *s, uint32_t *v, unsigned *e)
{
    int32_t x, y;
    x = base64dec2(s + 0) | base64dec2(s + 2) << 12;
    if (x < 0) return false;
    v[ 0] = (x      ) & Mask(7);
    v[ 4] = (x >>  7) & Mask(7);
    v[ 8] = (x >> 14) & Mask(7);
    y = base64dec3(s + 16);
    if (y < 0) return false;
    v[12] = (x >> 21 | y << 3) & Mask(7);
    v[16] = (y >>  4) & Mask(7);
    v[20] = (y >> 11);
    x = base64dec2(s + 4) | base64dec2(s + 6) << 12;
    if (x < 0) return false;
    v[ 1] = (x      ) & Mask(7);
    v[ 5] = (x >>  7) & Mask(7);
    v[ 9] = (x >> 14) & Mask(7);
    y = base64dec3(s + 19);
    if (y < 0) return false;
    v[13] = (x >> 21 | y << 3) & Mask(7);
    v[17] = (y >>  4) & Mask(7);
    v[21] = (y >> 11);
    x = base64dec2(s + 8) | base64dec2(s + 10) << 12;
    if (x < 0) return false;
    v[ 2] = (x      ) & Mask(7);
    v[ 6] = (x >>  7) & Mask(7);
    v[10] = (x >> 14) & Mask(7);
    y = base64dec3(s + 22);
    if (y < 0) return false;
    v[14] = (x >> 21 | y << 3) & Mask(7);
    v[18] = (y >>  4) & Mask(7);
    v[22] = (y >> 11);
    x = base64dec2(s + 12) | base64dec2(s + 14) << 12;
    if (x < 0) return false;
    v[ 3] = (x      ) & Mask(7);
    v[ 7] = (x >>  7) & Mask(7);
    v[11] = (x >> 14) & Mask(7);
    y = base64dec3(s + 25);
    if (y < 0) return false;
    v[15] = (x >> 21 | y << 3) & Mask(7);
    v[19] = (y >>  4) & Mask(7);
    v[23] = (y >> 11);
    return (void) e, true;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
pushq %rax
movzbl (%rdi), %eax
movzbl 0x1(%rdi), %ecx
leaq 0x7a34(%rip), %r15      # 0x9050
movsbl (%rax,%r15), %edx
movswl 0x100(%r15,%rcx,2), %eax
orl %edx, %eax
movzbl 0x2(%rdi), %ecx
movzbl 0x3(%rdi), %edx
movsbl (%rcx,%r15), %ecx
movswl 0x100(%r15,%rdx,2), %ebp
orl %ecx, %ebp
shll $0xc, %ebp
orl %eax, %ebp
js 0x1850
movq %rsi, %rbx
movq %rdi, %r14
andl $0x7f, %eax
movl %eax, (%rsi)
movl %ebp, %eax
shrl $0x7, %eax
andl $0x7f, %eax
movl %eax, 0x10(%rsi)
movl %ebp, %eax
shrl $0xe, %eax
andl $0x7f, %eax
movl %eax, 0x20(%rsi)
addq $0x10, %rdi
callq 0x89a5
testl %eax, %eax
js 0x1850
shrl $0x15, %ebp
leal (,%rax,8), %ecx
orl %ebp, %ecx
andl $0x7f, %ecx
movl %ecx, 0x30(%rbx)
movl %eax, %ecx
shrl $0x4, %ecx
andl $0x7f, %ecx
movl %ecx, 0x40(%rbx)
shrl $0xb, %eax
movl %eax, 0x50(%rbx)
movzbl 0x4(%r14), %eax
movzbl 0x5(%r14), %ecx
movsbl (%rax,%r15), %edx
movswl 0x100(%r15,%rcx,2), %eax
orl %edx, %eax
movzbl 0x6(%r14), %ecx
movzbl 0x7(%r14), %edx
movsbl (%rcx,%r15), %ecx
movswl 0x100(%r15,%rdx,2), %ebp
orl %ecx, %ebp
shll $0xc, %ebp
orl %eax, %ebp
js 0x1850
andl $0x7f, %eax
movl %eax, 0x4(%rbx)
movl %ebp, %eax
shrl $0x7, %eax
andl $0x7f, %eax
movl %eax, 0x14(%rbx)
movl %ebp, %eax
shrl $0xe, %eax
andl $0x7f, %eax
movl %eax, 0x24(%rbx)
leaq 0x13(%r14), %rdi
callq 0x89a5
testl %eax, %eax
js 0x1850
shrl $0x15, %ebp
leal (,%rax,8), %ecx
orl %ebp, %ecx
andl $0x7f, %ecx
movl %ecx, 0x34(%rbx)
movl %eax, %ecx
shrl $0x4, %ecx
andl $0x7f, %ecx
movl %ecx, 0x44(%rbx)
shrl $0xb, %eax
movl %eax, 0x54(%rbx)
movzbl 0x8(%r14), %eax
movzbl 0x9(%r14), %ecx
movsbl (%rax,%r15), %edx
movswl 0x100(%r15,%rcx,2), %eax
orl %edx, %eax
movzbl 0xa(%r14), %ecx
movzbl 0xb(%r14), %edx
movsbl (%rcx,%r15), %ecx
movswl 0x100(%r15,%rdx,2), %ebp
orl %ecx, %ebp
shll $0xc, %ebp
orl %eax, %ebp
js 0x1850
andl $0x7f, %eax
movl %eax, 0x8(%rbx)
movl %ebp, %eax
shrl $0x7, %eax
andl $0x7f, %eax
movl %eax, 0x18(%rbx)
movl %ebp, %eax
shrl $0xe, %eax
andl $0x7f, %eax
movl %eax, 0x28(%rbx)
leaq 0x16(%r14), %rdi
callq 0x89a5
testl %eax, %eax
js 0x1850
shrl $0x15, %ebp
leal (,%rax,8), %ecx
orl %ebp, %ecx
andl $0x7f, %ecx
movl %ecx, 0x38(%rbx)
movl %eax, %ecx
shrl $0x4, %ecx
andl $0x7f, %ecx
movl %ecx, 0x48(%rbx)
shrl $0xb, %eax
movl %eax, 0x58(%rbx)
movzbl 0xc(%r14), %eax
movzbl 0xd(%r14), %ecx
movsbl (%rax,%r15), %edx
movswl 0x100(%r15,%rcx,2), %eax
orl %edx, %eax
movzbl 0xe(%r14), %ecx
movzbl 0xf(%r14), %edx
movsbl (%rcx,%r15), %ecx
movswl 0x100(%r15,%rdx,2), %ebp
orl %ecx, %ebp
shll $0xc, %ebp
orl %eax, %ebp
js 0x1850
andl $0x7f, %eax
movl %eax, 0xc(%rbx)
movl %ebp, %eax
shrl $0x7, %eax
andl $0x7f, %eax
movl %eax, 0x1c(%rbx)
movl %ebp, %eax
shrl $0xe, %eax
andl $0x7f, %eax
movl %eax, 0x2c(%rbx)
addq $0x19, %r14
movq %r14, %rdi
callq 0x89a5
testl %eax, %eax
js 0x1850
shrl $0x15, %ebp
leal (,%rax,8), %ecx
orl %ebp, %ecx
andl $0x7f, %ecx
movl %ecx, 0x3c(%rbx)
movl %eax, %ecx
shrl $0x4, %ecx
andl $0x7f, %ecx
movl %ecx, 0x4c(%rbx)
shrl $0xb, %eax
movl %eax, 0x5c(%rbx)
movb $0x1, %al
jmp 0x1852
xorl %eax, %eax
addq $0x8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq