// File: /workspace/github_c_makefile_star2_O3/enzo1982[P]smooth/libraries/libwebp/src/dsp/yuv_sse2.c
// Function: YuvToBgrRow_SSE2
static void YuvToBgrRow_SSE2(const uint8_t* y,
                             const uint8_t* u, const uint8_t* v,
                             uint8_t* dst, int len) {
  int n;
  for (n = 0; n + 32 <= len; n += 32, dst += 32 * 3) {
    __m128i R0, R1, R2, R3, G0, G1, G2, G3, B0, B1, B2, B3;
    __m128i bgr0, bgr1, bgr2, bgr3, bgr4, bgr5;

    YUV420ToRGB_SSE2(y +  0, u +  0, v +  0, &R0, &G0, &B0);
    YUV420ToRGB_SSE2(y +  8, u +  4, v +  4, &R1, &G1, &B1);
    YUV420ToRGB_SSE2(y + 16, u +  8, v +  8, &R2, &G2, &B2);
    YUV420ToRGB_SSE2(y + 24, u + 12, v + 12, &R3, &G3, &B3);

    // Cast to 8b and store as BBBBGGGGRRRR.
    bgr0 = _mm_packus_epi16(B0, B1);
    bgr1 = _mm_packus_epi16(B2, B3);
    bgr2 = _mm_packus_epi16(G0, G1);
    bgr3 = _mm_packus_epi16(G2, G3);
    bgr4 = _mm_packus_epi16(R0, R1);
    bgr5 = _mm_packus_epi16(R2, R3);

    // Pack as BGRBGRBGRBGR.
    PlanarTo24b_SSE2(&bgr0, &bgr1, &bgr2, &bgr3, &bgr4, &bgr5, dst);

    y += 32;
    u += 16;
    v += 16;
  }
  for (; n < len; ++n) {   // Finish off
    VP8YuvToBgr(y[0], u[0], v[0], dst);
    dst += 3;
    y += 1;
    u += (n & 1);
    v += (n & 1);
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
xorl %eax, %eax
cmpl $0x20, %r8d
jl 0xee671
movl %r8d, %eax
andl $0x7fffffe0, %eax       # imm = 0x7FFFFFE0
movl $0x20, %r9d
movdqa 0x3ee88(%rip), %xmm9    # 0x12cea0
movq (%rdi), %xmm1
pxor %xmm12, %xmm12
punpcklbw %xmm1, %xmm12   # xmm12 = xmm12[0],xmm1[0],xmm12[1],xmm1[1],xmm12[2],xmm1[2],xmm12[3],xmm1[3],xmm12[4],xmm1[4],xmm12[5],xmm1[5],xmm12[6],xmm1[6],xmm12[7],xmm1[7]
movd (%rsi), %xmm1
pxor %xmm2, %xmm2
punpcklbw %xmm1, %xmm2    # xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1],xmm2[2],xmm1[2],xmm2[3],xmm1[3],xmm2[4],xmm1[4],xmm2[5],xmm1[5],xmm2[6],xmm1[6],xmm2[7],xmm1[7]
pxor %xmm0, %xmm0
punpcklbw %xmm0, %xmm2    # xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1],xmm2[2],xmm0[2],xmm2[3],xmm0[3],xmm2[4],xmm0[4],xmm2[5],xmm0[5],xmm2[6],xmm0[6],xmm2[7],xmm0[7]
pxor %xmm5, %xmm5
pshufd $0xfa, %xmm2, %xmm1     # xmm1 = xmm2[2,2,3,3]
pshufd $0x68, %xmm2, %xmm2     # xmm2 = xmm2[0,2,2,1]
pshuflw $0x64, %xmm2, %xmm2     # xmm2 = xmm2[0,1,2,1,4,5,6,7]
pshufhw $0xcc, %xmm2, %xmm2     # xmm2 = xmm2[0,1,2,3,4,7,4,7]
packuswb %xmm1, %xmm2
movd (%rdx), %xmm1
pxor %xmm3, %xmm3
punpcklbw %xmm1, %xmm3    # xmm3 = xmm3[0],xmm1[0],xmm3[1],xmm1[1],xmm3[2],xmm1[2],xmm3[3],xmm1[3],xmm3[4],xmm1[4],xmm3[5],xmm1[5],xmm3[6],xmm1[6],xmm3[7],xmm1[7]
punpcklbw %xmm5, %xmm3    # xmm3 = xmm3[0],xmm5[0],xmm3[1],xmm5[1],xmm3[2],xmm5[2],xmm3[3],xmm5[3],xmm3[4],xmm5[4],xmm3[5],xmm5[5],xmm3[6],xmm5[6],xmm3[7],xmm5[7]
pshufd $0xfa, %xmm3, %xmm1     # xmm1 = xmm3[2,2,3,3]
pshufd $0x68, %xmm3, %xmm3     # xmm3 = xmm3[0,2,2,1]
pshuflw $0x64, %xmm3, %xmm3     # xmm3 = xmm3[0,1,2,1,4,5,6,7]
pshufhw $0xcc, %xmm3, %xmm4     # xmm4 = xmm3[0,1,2,3,4,7,4,7]
packuswb %xmm1, %xmm4
movdqa 0x3f63a(%rip), %xmm6    # 0x12d6c0
pmulhuw %xmm6, %xmm12
movdqa %xmm6, %xmm13
movdqa %xmm4, %xmm1
movdqa 0x3f634(%rip), %xmm7    # 0x12d6d0
pmulhuw %xmm7, %xmm1
movdqa %xmm7, %xmm14
movdqa %xmm2, %xmm10
movdqa %xmm12, %xmm3
movdqa 0x3f669(%rip), %xmm0    # 0x12d720
pmulhuw %xmm0, %xmm2
movdqa %xmm0, %xmm15
paddusw %xmm12, %xmm2
movdqa 0x3f612(%rip), %xmm8    # 0x12d6e0
paddw %xmm8, %xmm12
paddw %xmm1, %xmm12
movdqa 0x3f610(%rip), %xmm0    # 0x12d6f0
pmulhuw %xmm0, %xmm10
movdqa 0x3f613(%rip), %xmm6    # 0x12d700
pmulhuw %xmm6, %xmm4
paddw %xmm10, %xmm4
psubw %xmm4, %xmm3
movdqa 0x3f60e(%rip), %xmm7    # 0x12d710
paddw %xmm7, %xmm3
movdqa 0x3f622(%rip), %xmm0    # 0x12d730
psubusw %xmm0, %xmm2
psraw $0x6, %xmm12
psraw $0x6, %xmm3
psrlw $0x6, %xmm2
movq 0x8(%rdi), %xmm1
pxor %xmm4, %xmm4
punpcklbw %xmm1, %xmm4    # xmm4 = xmm4[0],xmm1[0],xmm4[1],xmm1[1],xmm4[2],xmm1[2],xmm4[3],xmm1[3],xmm4[4],xmm1[4],xmm4[5],xmm1[5],xmm4[6],xmm1[6],xmm4[7],xmm1[7]
movd 0x4(%rsi), %xmm1
pxor %xmm10, %xmm10
punpcklbw %xmm1, %xmm10   # xmm10 = xmm10[0],xmm1[0],xmm10[1],xmm1[1],xmm10[2],xmm1[2],xmm10[3],xmm1[3],xmm10[4],xmm1[4],xmm10[5],xmm1[5],xmm10[6],xmm1[6],xmm10[7],xmm1[7]
punpcklbw %xmm5, %xmm10   # xmm10 = xmm10[0],xmm5[0],xmm10[1],xmm5[1],xmm10[2],xmm5[2],xmm10[3],xmm5[3],xmm10[4],xmm5[4],xmm10[5],xmm5[5],xmm10[6],xmm5[6],xmm10[7],xmm5[7]
pshufd $0xfa, %xmm10, %xmm11   # xmm11 = xmm10[2,2,3,3]
pshufd $0x68, %xmm10, %xmm1    # xmm1 = xmm10[0,2,2,1]
pshuflw $0x64, %xmm1, %xmm1     # xmm1 = xmm1[0,1,2,1,4,5,6,7]
pshufhw $0xcc, %xmm1, %xmm1     # xmm1 = xmm1[0,1,2,3,4,7,4,7]
packuswb %xmm11, %xmm1
movd 0x4(%rdx), %xmm10
pxor %xmm11, %xmm11
punpcklbw %xmm10, %xmm11  # xmm11 = xmm11[0],xmm10[0],xmm11[1],xmm10[1],xmm11[2],xmm10[2],xmm11[3],xmm10[3],xmm11[4],xmm10[4],xmm11[5],xmm10[5],xmm11[6],xmm10[6],xmm11[7],xmm10[7]
punpcklbw %xmm5, %xmm11   # xmm11 = xmm11[0],xmm5[0],xmm11[1],xmm5[1],xmm11[2],xmm5[2],xmm11[3],xmm5[3],xmm11[4],xmm5[4],xmm11[5],xmm5[5],xmm11[6],xmm5[6],xmm11[7],xmm5[7]
pshufd $0xfa, %xmm11, %xmm10   # xmm10 = xmm11[2,2,3,3]
pshufd $0x68, %xmm11, %xmm11   # xmm11 = xmm11[0,2,2,1]
pshuflw $0x64, %xmm11, %xmm11   # xmm11 = xmm11[0,1,2,1,4,5,6,7]
pshufhw $0xcc, %xmm11, %xmm11   # xmm11 = xmm11[0,1,2,3,4,7,4,7]
packuswb %xmm10, %xmm11
pmulhuw %xmm13, %xmm4
movdqa %xmm11, %xmm10
pmulhuw %xmm14, %xmm10
movdqa %xmm1, %xmm13
movdqa %xmm4, %xmm14
pmulhuw %xmm15, %xmm1
paddusw %xmm4, %xmm1
paddw %xmm8, %xmm4
paddw %xmm10, %xmm4
movdqa 0x3f52c(%rip), %xmm5    # 0x12d6f0
pmulhuw %xmm5, %xmm13
pmulhuw %xmm6, %xmm11
paddw %xmm13, %xmm11
psubw %xmm11, %xmm14
paddw %xmm7, %xmm14
psubusw %xmm0, %xmm1
psraw $0x6, %xmm4
packuswb %xmm4, %xmm12
psraw $0x6, %xmm14
packuswb %xmm14, %xmm3
psrlw $0x6, %xmm1
packuswb %xmm1, %xmm2
movq 0x10(%rdi), %xmm4
pxor %xmm1, %xmm1
punpcklbw %xmm4, %xmm1    # xmm1 = xmm1[0],xmm4[0],xmm1[1],xmm4[1],xmm1[2],xmm4[2],xmm1[3],xmm4[3],xmm1[4],xmm4[4],xmm1[5],xmm4[5],xmm1[6],xmm4[6],xmm1[7],xmm4[7]
movd 0x8(%rsi), %xmm4
pxor %xmm10, %xmm10
punpcklbw %xmm4, %xmm10   # xmm10 = xmm10[0],xmm4[0],xmm10[1],xmm4[1],xmm10[2],xmm4[2],xmm10[3],xmm4[3],xmm10[4],xmm4[4],xmm10[5],xmm4[5],xmm10[6],xmm4[6],xmm10[7],xmm4[7]
pxor %xmm0, %xmm0
punpcklbw %xmm0, %xmm10   # xmm10 = xmm10[0],xmm0[0],xmm10[1],xmm0[1],xmm10[2],xmm0[2],xmm10[3],xmm0[3],xmm10[4],xmm0[4],xmm10[5],xmm0[5],xmm10[6],xmm0[6],xmm10[7],xmm0[7]
pshufd $0xfa, %xmm10, %xmm4    # xmm4 = xmm10[2,2,3,3]
pshufd $0x68, %xmm10, %xmm10   # xmm10 = xmm10[0,2,2,1]
pshuflw $0x64, %xmm10, %xmm10   # xmm10 = xmm10[0,1,2,1,4,5,6,7]
pshufhw $0xcc, %xmm10, %xmm13   # xmm13 = xmm10[0,1,2,3,4,7,4,7]
packuswb %xmm4, %xmm13
movd 0x8(%rdx), %xmm4
pxor %xmm10, %xmm10
punpcklbw %xmm4, %xmm10   # xmm10 = xmm10[0],xmm4[0],xmm10[1],xmm4[1],xmm10[2],xmm4[2],xmm10[3],xmm4[3],xmm10[4],xmm4[4],xmm10[5],xmm4[5],xmm10[6],xmm4[6],xmm10[7],xmm4[7]
punpcklbw %xmm0, %xmm10   # xmm10 = xmm10[0],xmm0[0],xmm10[1],xmm0[1],xmm10[2],xmm0[2],xmm10[3],xmm0[3],xmm10[4],xmm0[4],xmm10[5],xmm0[5],xmm10[6],xmm0[6],xmm10[7],xmm0[7]
pxor %xmm7, %xmm7
pshufd $0xfa, %xmm10, %xmm4    # xmm4 = xmm10[2,2,3,3]
pshufd $0x68, %xmm10, %xmm10   # xmm10 = xmm10[0,2,2,1]
pshuflw $0x64, %xmm10, %xmm10   # xmm10 = xmm10[0,1,2,1,4,5,6,7]
pshufhw $0xcc, %xmm10, %xmm10   # xmm10 = xmm10[0,1,2,3,4,7,4,7]
packuswb %xmm4, %xmm10
pmulhuw 0x3f442(%rip), %xmm1    # 0x12d6c0
movdqa %xmm10, %xmm4
pmulhuw 0x3f445(%rip), %xmm4    # 0x12d6d0
movdqa %xmm13, %xmm11
movdqa %xmm1, %xmm15
pmulhuw 0x3f482(%rip), %xmm13   # 0x12d720
paddusw %xmm1, %xmm13
movdqa %xmm8, %xmm0
paddw %xmm8, %xmm1
paddw %xmm4, %xmm1
pmulhuw %xmm5, %xmm11
movdqa %xmm5, %xmm8
pmulhuw %xmm6, %xmm10
paddw %xmm11, %xmm10
psubw %xmm10, %xmm15
movq 0x18(%rdi), %xmm10
pxor %xmm5, %xmm5
punpcklbw %xmm10, %xmm5   # xmm5 = xmm5[0],xmm10[0],xmm5[1],xmm10[1],xmm5[2],xmm10[2],xmm5[3],xmm10[3],xmm5[4],xmm10[4],xmm5[5],xmm10[5],xmm5[6],xmm10[6],xmm5[7],xmm10[7]
movd 0xc(%rsi), %xmm10
pxor %xmm11, %xmm11
punpcklbw %xmm10, %xmm11  # xmm11 = xmm11[0],xmm10[0],xmm11[1],xmm10[1],xmm11[2],xmm10[2],xmm11[3],xmm10[3],xmm11[4],xmm10[4],xmm11[5],xmm10[5],xmm11[6],xmm10[6],xmm11[7],xmm10[7]
punpcklbw %xmm7, %xmm11   # xmm11 = xmm11[0],xmm7[0],xmm11[1],xmm7[1],xmm11[2],xmm7[2],xmm11[3],xmm7[3],xmm11[4],xmm7[4],xmm11[5],xmm7[5],xmm11[6],xmm7[6],xmm11[7],xmm7[7]
pshufd $0xfa, %xmm11, %xmm10   # xmm10 = xmm11[2,2,3,3]
pshufd $0x68, %xmm11, %xmm11   # xmm11 = xmm11[0,2,2,1]
pshuflw $0x64, %xmm11, %xmm11   # xmm11 = xmm11[0,1,2,1,4,5,6,7]
pshufhw $0xcc, %xmm11, %xmm11   # xmm11 = xmm11[0,1,2,3,4,7,4,7]
packuswb %xmm10, %xmm11
movd 0xc(%rdx), %xmm10
pxor %xmm14, %xmm14
punpcklbw %xmm10, %xmm14  # xmm14 = xmm14[0],xmm10[0],xmm14[1],xmm10[1],xmm14[2],xmm10[2],xmm14[3],xmm10[3],xmm14[4],xmm10[4],xmm14[5],xmm10[5],xmm14[6],xmm10[6],xmm14[7],xmm10[7]
punpcklbw %xmm7, %xmm14   # xmm14 = xmm14[0],xmm7[0],xmm14[1],xmm7[1],xmm14[2],xmm7[2],xmm14[3],xmm7[3],xmm14[4],xmm7[4],xmm14[5],xmm7[5],xmm14[6],xmm7[6],xmm14[7],xmm7[7]
pshufd $0xfa, %xmm14, %xmm10   # xmm10 = xmm14[2,2,3,3]
pshufd $0x68, %xmm14, %xmm14   # xmm14 = xmm14[0,2,2,1]
pshuflw $0x64, %xmm14, %xmm14   # xmm14 = xmm14[0,1,2,1,4,5,6,7]
pshufhw $0xcc, %xmm14, %xmm14   # xmm14 = xmm14[0,1,2,3,4,7,4,7]
packuswb %xmm10, %xmm14
pmulhuw 0x3f37b(%rip), %xmm5    # 0x12d6c0
movdqa %xmm14, %xmm10
pmulhuw 0x3f37d(%rip), %xmm10   # 0x12d6d0
movdqa %xmm5, %xmm4
paddw %xmm0, %xmm4
paddw %xmm10, %xmm4
movdqa %xmm11, %xmm10
pmulhuw %xmm8, %xmm10
pmulhuw %xmm6, %xmm14
paddw %xmm10, %xmm14
pmulhuw 0x3f3a3(%rip), %xmm11   # 0x12d720
paddusw %xmm5, %xmm11
movdqa 0x3f386(%rip), %xmm0    # 0x12d710
paddw %xmm0, %xmm15
movdqa 0x3f399(%rip), %xmm6    # 0x12d730
psubusw %xmm6, %xmm13
psraw $0x6, %xmm1
psraw $0x6, %xmm15
psrlw $0x6, %xmm13
psubw %xmm14, %xmm5
paddw %xmm0, %xmm5
psubusw %xmm6, %xmm11
psraw $0x6, %xmm4
packuswb %xmm4, %xmm1
psraw $0x6, %xmm5
packuswb %xmm5, %xmm15
psrlw $0x6, %xmm11
packuswb %xmm11, %xmm13
movdqa %xmm2, %xmm11
pand %xmm9, %xmm11
movdqa %xmm13, %xmm4
pand %xmm9, %xmm4
packuswb %xmm4, %xmm11
movdqa %xmm3, %xmm10
pand %xmm9, %xmm10
movdqa %xmm15, %xmm4
pand %xmm9, %xmm4
packuswb %xmm4, %xmm10
movdqa %xmm12, %xmm14
pand %xmm9, %xmm14
movdqa %xmm1, %xmm4
pand %xmm9, %xmm4
packuswb %xmm4, %xmm14
psrlw $0x8, %xmm2
psrlw $0x8, %xmm13
packuswb %xmm13, %xmm2
psrlw $0x8, %xmm3
psrlw $0x8, %xmm15
packuswb %xmm15, %xmm3
psrlw $0x8, %xmm12
psrlw $0x8, %xmm1
packuswb %xmm1, %xmm12
movdqa %xmm11, %xmm1
pand %xmm9, %xmm1
movdqa %xmm10, %xmm4
pand %xmm9, %xmm4
packuswb %xmm4, %xmm1
movdqa %xmm14, %xmm15
pand %xmm9, %xmm15
movdqa %xmm2, %xmm4
pand %xmm9, %xmm4
packuswb %xmm4, %xmm15
movdqa %xmm3, %xmm13
pand %xmm9, %xmm13
movdqa %xmm12, %xmm4
pand %xmm9, %xmm4
packuswb %xmm4, %xmm13
psrlw $0x8, %xmm11
psrlw $0x8, %xmm10
packuswb %xmm10, %xmm11
psrlw $0x8, %xmm14
psrlw $0x8, %xmm2
packuswb %xmm2, %xmm14
psrlw $0x8, %xmm3
psrlw $0x8, %xmm12
packuswb %xmm12, %xmm3
movdqa %xmm1, %xmm2
pand %xmm9, %xmm2
movdqa %xmm15, %xmm4
pand %xmm9, %xmm4
packuswb %xmm4, %xmm2
movdqa %xmm13, %xmm4
pand %xmm9, %xmm4
movdqa %xmm11, %xmm5
pand %xmm9, %xmm5
packuswb %xmm5, %xmm4
movdqa %xmm14, %xmm12
pand %xmm9, %xmm12
movdqa %xmm3, %xmm5
pand %xmm9, %xmm5
packuswb %xmm5, %xmm12
psrlw $0x8, %xmm1
psrlw $0x8, %xmm15
packuswb %xmm15, %xmm1
psrlw $0x8, %xmm13
psrlw $0x8, %xmm11
packuswb %xmm11, %xmm13
psrlw $0x8, %xmm14
psrlw $0x8, %xmm3
packuswb %xmm3, %xmm14
movdqa %xmm2, %xmm10
pand %xmm9, %xmm10
movdqa %xmm4, %xmm3
pand %xmm9, %xmm3
packuswb %xmm3, %xmm10
movdqa %xmm12, %xmm3
pand %xmm9, %xmm3
movdqa %xmm1, %xmm5
pand %xmm9, %xmm5
packuswb %xmm5, %xmm3
movdqa %xmm13, %xmm11
pand %xmm9, %xmm11
movdqa %xmm14, %xmm5
pand %xmm9, %xmm5
packuswb %xmm5, %xmm11
psrlw $0x8, %xmm2
psrlw $0x8, %xmm4
packuswb %xmm4, %xmm2
psrlw $0x8, %xmm12
psrlw $0x8, %xmm1
packuswb %xmm1, %xmm12
psrlw $0x8, %xmm13
psrlw $0x8, %xmm14
packuswb %xmm14, %xmm13
movdqa %xmm10, %xmm1
pand %xmm9, %xmm1
movdqa %xmm3, %xmm4
pand %xmm9, %xmm4
packuswb %xmm4, %xmm1
movdqa %xmm11, %xmm4
pand %xmm9, %xmm4
movdqa %xmm2, %xmm5
pand %xmm9, %xmm5
packuswb %xmm5, %xmm4
movdqa %xmm12, %xmm5
pand %xmm9, %xmm5
movdqa %xmm13, %xmm14
pand %xmm9, %xmm14
packuswb %xmm14, %xmm5
psrlw $0x8, %xmm10
psrlw $0x8, %xmm3
packuswb %xmm3, %xmm10
psrlw $0x8, %xmm11
psrlw $0x8, %xmm2
packuswb %xmm2, %xmm11
psrlw $0x8, %xmm12
psrlw $0x8, %xmm13
packuswb %xmm13, %xmm12
movdqu %xmm1, (%rcx)
movdqu %xmm4, 0x10(%rcx)
movdqu %xmm5, 0x20(%rcx)
movdqu %xmm10, 0x30(%rcx)
movdqu %xmm11, 0x40(%rcx)
movdqu %xmm12, 0x50(%rcx)
addq $0x20, %rdi
addq $0x10, %rsi
addq $0x10, %rdx
addq $0x60, %rcx
addl $0x20, %r9d
cmpl %r8d, %r9d
jle 0xee018
cmpl %r8d, %eax
jge 0xee763
movl $0x4000, %r9d           # imm = 0x4000
movzbl (%rdi), %r10d
movzbl (%rsi), %ebx
movzbl (%rdx), %r11d
imull $0x4a85, %r10d, %r10d   # imm = 0x4A85
shrl $0x8, %r10d
imull $0x811a, %ebx, %ebp     # imm = 0x811A
shrl $0x8, %ebp
addl %r10d, %ebp
subl $0x4515, %ebp           # imm = 0x4515
movl $0x0, %r14d
adcb $-0x1, %r14b
movl %ebp, %r15d
shrl $0x6, %r15d
cmpl %r9d, %ebp
movzbl %r14b, %ebp
cmovbl %r15d, %ebp
imull $0x1913, %ebx, %ebx     # imm = 0x1913
shrl $0x8, %ebx
imull $0x3408, %r11d, %r14d   # imm = 0x3408
shrl $0x8, %r14d
addl %ebx, %r14d
movl %r10d, %ebx
subl %r14d, %ebx
negl %r14d
addl %r10d, %r14d
addl $0x2204, %r14d          # imm = 0x2204
movl %r14d, %r15d
shrl $0x6, %r15d
cmpl $0xffffddfc, %ebx       # imm = 0xFFFFDDFC
setge %bl
negb %bl
cmpl %r9d, %r14d
movzbl %bl, %ebx
cmovbl %r15d, %ebx
movb %bpl, (%rcx)
imull $0x6625, %r11d, %r11d   # imm = 0x6625
shrl $0x8, %r11d
addl %r10d, %r11d
subl $0x379a, %r11d          # imm = 0x379A
movl $0x0, %r10d
adcb $-0x1, %r10b
movb %bl, 0x1(%rcx)
movl %r11d, %ebx
shrl $0x6, %ebx
cmpl %r9d, %r11d
movzbl %r10b, %r10d
cmovbl %ebx, %r10d
movb %r10b, 0x2(%rcx)
incq %rdi
movl %eax, %r10d
andl $0x1, %r10d
addq %r10, %rsi
addq %r10, %rdx
incl %eax
addq $0x3, %rcx
cmpl %eax, %r8d
jne 0xee680
popq %rbx
popq %r14
popq %r15
popq %rbp
retq