user: 提供的汇编代码用C语言表示会是什么样子:

```asm
<alpha_compose>:
  endbr64
  imul   %edx,%esi
  lea    (%rsi,%rsi,2),%esi
  test   %esi,%esi
  jle    L109
  mov    %rcx,%rdx
  mov    %rdi,%rax
  lea    0x1(%rcx),%rcx
  mov    $0x64,%r9d
  sub    %rcx,%rax
  sub    %r8d,%r9d
  cmp    $0xe,%rax
  jbe    L83
  lea    -0x1(%rsi),%eax
  cmp    $0xe,%eax
  jbe    L83
  push   %rbx
  movd   %r9d,%xmm3
  movd   %r8d,%xmm4
  mov    %esi,%ecx
  pshufd $0x0,%xmm3,%xmm3
  pshufd $0x0,%xmm4,%xmm4
  shr    $0x4,%ecx
  xor    %eax,%eax
  movdqa D46(%rip),%xmm0
  shl    $0x4,%rcx
  pxor   %xmm12,%xmm12
  movaps %xmm3,-0x40(%rsp)
  psrlq  $0x20,%xmm3
  movaps %xmm4,-0x30(%rsp)
  psrlq  $0x20,%xmm4
  movaps %xmm3,-0x20(%rsp)
  pxor   %xmm3,%xmm3
  movaps %xmm4,-0x10(%rsp)
  movdqa %xmm3,%xmm4
  pcmpgtd %xmm0,%xmm4
  nopl   (%rax)
L31:
  movdqu (%rdi,%rax,1),%xmm1
  pxor   %xmm7,%xmm7
  movdqa -0x40(%rsp),%xmm14
  movdqa %xmm3,%xmm13
  movdqa -0x20(%rsp),%xmm15
  movdqa %xmm1,%xmm5
  movdqa %xmm14,%xmm11
  punpckhbw %xmm7,%xmm1
  punpcklbw %xmm7,%xmm5
  movdqa %xmm14,%xmm9
  movdqa %xmm14,%xmm10
  movdqa %xmm5,%xmm6
  punpckhwd %xmm12,%xmm5
  movdqa %xmm14,%xmm2
  movdqa -0x30(%rsp),%xmm14
  pmuludq %xmm5,%xmm11
  psrlq  $0x20,%xmm5
  punpcklwd %xmm12,%xmm6
  pmuludq %xmm15,%xmm5
  pmuludq %xmm6,%xmm2
  movdqa %xmm14,%xmm8
  psrlq  $0x20,%xmm6
  pmuludq %xmm15,%xmm6
  pshufd $0x8,%xmm11,%xmm11
  pshufd $0x8,%xmm5,%xmm5
  pshufd $0x8,%xmm2,%xmm2
  punpckldq %xmm5,%xmm11
  movdqa %xmm1,%xmm5
  punpckhwd %xmm12,%xmm1
  pmuludq %xmm1,%xmm9
  psrlq  $0x20,%xmm1
  punpcklwd %xmm12,%xmm5
  pmuludq %xmm15,%xmm1
  pmuludq %xmm5,%xmm10
  pshufd $0x8,%xmm6,%xmm6
  psrlq  $0x20,%xmm5
  punpckldq %xmm6,%xmm2
  pmuludq %xmm15,%xmm5
  movdqa -0x10(%rsp),%xmm15
  pshufd $0x8,%xmm9,%xmm9
  pshufd $0x8,%xmm1,%xmm1
  pshufd $0x8,%xmm10,%xmm10
  punpckldq %xmm1,%xmm9
  movdqu (%rdx,%rax,1),%xmm1
  pshufd $0x8,%xmm5,%xmm5
  punpckldq %xmm5,%xmm10
  movdqa %xmm1,%xmm5
  punpckhbw %xmm7,%xmm1
  punpcklbw %xmm7,%xmm5
  movdqa %xmm14,%xmm7
  movdqa %xmm5,%xmm6
  punpckhwd %xmm12,%xmm5
  pmuludq %xmm5,%xmm7
  psrlq  $0x20,%xmm5
  punpcklwd %xmm12,%xmm6
  pmuludq %xmm6,%xmm8
  pmuludq %xmm15,%xmm5
  psrlq  $0x20,%xmm6
  pmuludq %xmm15,%xmm6
  pshufd $0x8,%xmm7,%xmm7
  pshufd $0x8,%xmm5,%xmm5
  pshufd $0x8,%xmm8,%xmm8
  punpckldq %xmm5,%xmm7
  movdqa %xmm1,%xmm5
  punpckhwd %xmm12,%xmm1
  pshufd $0x8,%xmm6,%xmm6
  punpcklwd %xmm12,%xmm5
  punpckldq %xmm6,%xmm8
  movdqa %xmm14,%xmm6
  pmuludq %xmm5,%xmm6
  psrlq  $0x20,%xmm5
  pmuludq %xmm15,%xmm5
  pshufd $0x8,%xmm6,%xmm6
  pshufd $0x8,%xmm5,%xmm5
  punpckldq %xmm5,%xmm6
  movdqa %xmm14,%xmm5
  movdqa %xmm4,%xmm14
  pmuludq %xmm1,%xmm5
  psrlq  $0x20,%xmm1
  pmuludq %xmm15,%xmm1
  movdqa %xmm4,%xmm15
  pshufd $0x8,%xmm5,%xmm5
  pshufd $0x8,%xmm1,%xmm1
  punpckldq %xmm1,%xmm5
  movdqa %xmm2,%xmm1
  punpckldq %xmm2,%xmm1
  pcmpgtd %xmm1,%xmm13
  pmuludq %xmm1,%xmm14
  pmuludq %xmm0,%xmm1
  pmuludq %xmm0,%xmm13
  paddq  %xmm14,%xmm13
  movdqa %xmm3,%xmm14
  psllq  $0x20,%xmm13
  paddq  %xmm13,%xmm1
  movdqa %xmm2,%xmm13
  punpckhdq %xmm2,%xmm13
  psrad  $0x1f,%xmm2
  pcmpgtd %xmm13,%xmm14
  pmuludq %xmm13,%xmm15
  pmuludq %xmm0,%xmm13
  pmuludq %xmm0,%xmm14
  paddq  %xmm15,%xmm14
  movdqa %xmm4,%xmm15
  psllq  $0x20,%xmm14
  paddq  %xmm14,%xmm13
  movdqa %xmm4,%xmm14
  shufps $0xdd,%xmm13,%xmm1
  psrad  $0x5,%xmm1
  movdqa %xmm3,%xmm13
  psubd  %xmm2,%xmm1
  movdqa %xmm11,%xmm2
  punpckldq %xmm11,%xmm2
  pcmpgtd %xmm2,%xmm13
  pmuludq %xmm2,%xmm14
  pmuludq %xmm0,%xmm2
  pmuludq %xmm0,%xmm13
  paddq  %xmm14,%xmm13
  movdqa %xmm3,%xmm14
  psllq  $0x20,%xmm13
  paddq  %xmm13,%xmm2
  movdqa %xmm11,%xmm13
  punpckhdq %xmm11,%xmm13
  psrad  $0x1f,%xmm11
  pcmpgtd %xmm13,%xmm14
  pmuludq %xmm13,%xmm15
  pmuludq %xmm0,%xmm13
  pmuludq %xmm0,%xmm14
  paddq  %xmm15,%xmm14
  psllq  $0x20,%xmm14
  paddq  %xmm14,%xmm13
  movdqa %xmm4,%xmm14
  shufps $0xdd,%xmm13,%xmm2
  psrad  $0x5,%xmm2
  movdqa %xmm4,%xmm13
  psubd  %xmm11,%xmm2
  movdqa %xmm1,%xmm11
  punpcklwd %xmm2,%xmm1
  punpckhwd %xmm2,%xmm11
  movdqa %xmm1,%xmm2
  punpcklwd %xmm11,%xmm1
  punpckhwd %xmm11,%xmm2
  movdqa %xmm3,%xmm11
  punpcklwd %xmm2,%xmm1
  movdqa %xmm10,%xmm2
  pand   D19(%rip),%xmm1
  punpckldq %xmm10,%xmm2
  pcmpgtd %xmm2,%xmm11
  pmuludq %xmm2,%xmm13
  pmuludq %xmm0,%xmm2
  pmuludq %xmm0,%xmm11
  paddq  %xmm13,%xmm11
  movdqa %xmm3,%xmm13
  psllq  $0x20,%xmm11
  paddq  %xmm11,%xmm2
  movdqa %xmm10,%xmm11
  punpckhdq %xmm10,%xmm11
  psrad  $0x1f,%xmm10
  pcmpgtd %xmm11,%xmm13
  pmuludq %xmm11,%xmm14
  pmuludq %xmm0,%xmm11
  pmuludq %xmm0,%xmm13
  paddq  %xmm14,%xmm13
  movdqa %xmm4,%xmm14
  psllq  $0x20,%xmm13
  paddq  %xmm13,%xmm11
  movdqa %xmm4,%xmm13
  shufps $0xdd,%xmm11,%xmm2
  psrad  $0x5,%xmm2
  movdqa %xmm3,%xmm11
  psubd  %xmm10,%xmm2
  movdqa %xmm9,%xmm10
  punpckldq %xmm9,%xmm10
  pcmpgtd %xmm10,%xmm11
  pmuludq %xmm10,%xmm13
  pmuludq %xmm0,%xmm10
  pmuludq %xmm0,%xmm11
  paddq  %xmm13,%xmm11
  movdqa %xmm3,%xmm13
  psllq  $0x20,%xmm11
  paddq  %xmm11,%xmm10
  movdqa %xmm9,%xmm11
  punpckhdq %xmm9,%xmm11
  psrad  $0x1f,%xmm9
  pcmpgtd %xmm11,%xmm13
  pmuludq %xmm11,%xmm14
  pmuludq %xmm0,%xmm11
  pmuludq %xmm0,%xmm13
  paddq  %xmm14,%xmm13
  psllq  $0x20,%xmm13
  paddq  %xmm13,%xmm11
  shufps $0xdd,%xmm11,%xmm10
  psrad  $0x5,%xmm10
  movdqa %xmm4,%xmm11
  psubd  %xmm9,%xmm10
  movdqa %xmm2,%xmm9
  punpcklwd %xmm10,%xmm2
  punpckhwd %xmm10,%xmm9
  movdqa %xmm2,%xmm10
  punpcklwd %xmm9,%xmm2
  punpckhwd %xmm9,%xmm10
  movdqa %xmm3,%xmm9
  punpcklwd %xmm10,%xmm2
  pand   D19(%rip),%xmm2
  movdqa %xmm4,%xmm10
  packuswb %xmm2,%xmm1
  movdqa %xmm8,%xmm2
  punpckldq %xmm8,%xmm2
  pcmpgtd %xmm2,%xmm9
  pmuludq %xmm2,%xmm10
  pmuludq %xmm0,%xmm2
  pmuludq %xmm0,%xmm9
  paddq  %xmm10,%xmm9
  movdqa %xmm3,%xmm10
  psllq  $0x20,%xmm9
  paddq  %xmm9,%xmm2
  movdqa %xmm8,%xmm9
  punpckhdq %xmm8,%xmm9
  psrad  $0x1f,%xmm8
  pcmpgtd %xmm9,%xmm10
  pmuludq %xmm9,%xmm11
  pmuludq %xmm0,%xmm9
  pmuludq %xmm0,%xmm10
  paddq  %xmm11,%xmm10
  movdqa %xmm4,%xmm11
  psllq  $0x20,%xmm10
  paddq  %xmm10,%xmm9
  movdqa %xmm4,%xmm10
  shufps $0xdd,%xmm9,%xmm2
  psrad  $0x5,%xmm2
  movdqa %xmm3,%xmm9
  psubd  %xmm8,%xmm2
  movdqa %xmm7,%xmm8
  punpckldq %xmm7,%xmm8
  pcmpgtd %xmm8,%xmm9
  pmuludq %xmm8,%xmm10
  pmuludq %xmm0,%xmm8
  pmuludq %xmm0,%xmm9
  paddq  %xmm10,%xmm9
  movdqa %xmm3,%xmm10
  psllq  $0x20,%xmm9
  paddq  %xmm9,%xmm8
  movdqa %xmm7,%xmm9
  punpckhdq %xmm7,%xmm9
  psrad  $0x1f,%xmm7
  pcmpgtd %xmm9,%xmm10
  pmuludq %xmm9,%xmm11
  pmuludq %xmm0,%xmm9
  pmuludq %xmm0,%xmm10
  paddq  %xmm11,%xmm10
  psllq  $0x20,%xmm10
  paddq  %xmm10,%xmm9
  movdqa %xmm4,%xmm10
  shufps $0xdd,%xmm9,%xmm8
  psrad  $0x5,%xmm8
  movdqa %xmm4,%xmm9
  psubd  %xmm7,%xmm8
  movdqa %xmm2,%xmm7
  punpcklwd %xmm8,%xmm2
  punpckhwd %xmm8,%xmm7
  movdqa %xmm2,%xmm8
  punpcklwd %xmm7,%xmm2
  punpckhwd %xmm7,%xmm8
  movdqa %xmm6,%xmm7
  punpckldq %xmm6,%xmm7
  punpcklwd %xmm8,%xmm2
  movdqa %xmm3,%xmm8
  pcmpgtd %xmm7,%xmm8
  pmuludq %xmm7,%xmm9
  pand   D19(%rip),%xmm2
  pmuludq %xmm0,%xmm7
  pmuludq %xmm0,%xmm8
  paddq  %xmm9,%xmm8
  movdqa %xmm3,%xmm9
  psllq  $0x20,%xmm8
  paddq  %xmm8,%xmm7
  movdqa %xmm6,%xmm8
  punpckhdq %xmm6,%xmm8
  psrad  $0x1f,%xmm6
  pcmpgtd %xmm8,%xmm9
  pmuludq %xmm8,%xmm10
  pmuludq %xmm0,%xmm8
  pmuludq %xmm0,%xmm9
  paddq  %xmm10,%xmm9
  movdqa %xmm4,%xmm10
  psllq  $0x20,%xmm9
  paddq  %xmm9,%xmm8
  movdqa %xmm4,%xmm9
  shufps $0xdd,%xmm8,%xmm7
  psrad  $0x5,%xmm7
  movdqa %xmm3,%xmm8
  psubd  %xmm6,%xmm7
  movdqa %xmm5,%xmm6
  punpckldq %xmm5,%xmm6
  pcmpgtd %xmm6,%xmm8
  pmuludq %xmm6,%xmm9
  pmuludq %xmm0,%xmm6
  pmuludq %xmm0,%xmm8
  paddq  %xmm9,%xmm8
  movdqa %xmm3,%xmm9
  psllq  $0x20,%xmm8
  paddq  %xmm8,%xmm6
  movdqa %xmm5,%xmm8
  punpckhdq %xmm5,%xmm8
  psrad  $0x1f,%xmm5
  pcmpgtd %xmm8,%xmm9
  pmuludq %xmm8,%xmm10
  pmuludq %xmm0,%xmm8
  pmuludq %xmm0,%xmm9
  paddq  %xmm10,%xmm9
  psllq  $0x20,%xmm9
  paddq  %xmm9,%xmm8
  shufps $0xdd,%xmm8,%xmm6
  psrad  $0x5,%xmm6
  movdqa %xmm7,%xmm8
  psubd  %xmm5,%xmm6
  movdqa %xmm7,%xmm5
  punpcklwd %xmm6,%xmm5
  punpckhwd %xmm6,%xmm8
  movdqa %xmm5,%xmm6
  punpcklwd %xmm8,%xmm5
  punpckhwd %xmm8,%xmm6
  punpcklwd %xmm6,%xmm5
  pand   D19(%rip),%xmm5
  packuswb %xmm5,%xmm2
  paddb  %xmm2,%xmm1
  movups %xmm1,(%rdi,%rax,1)
  add    $0x10,%rax
  cmp    %rcx,%rax
  jne    L31
  mov    %esi,%eax
  and    $0xfffffff0,%eax
  test   $0xf,%sil
  je     L194
  mov    %eax,%ecx
  movzbl (%rdx,%rcx,1),%r10d
  lea    (%rdi,%rcx,1),%rbx
  movzbl (%rbx),%r11d
  imul   %r8d,%r10d
  imul   %r9d,%r11d
  movslq %r10d,%rcx
  sar    $0x1f,%r10d
  imul   $0x51eb851f,%rcx,%rcx
  sar    $0x25,%rcx
  sub    %r10d,%ecx
  movslq %r11d,%r10
  sar    $0x1f,%r11d
  imul   $0x51eb851f,%r10,%r10
  sar    $0x25,%r10
  sub    %r11d,%r10d
  add    %r10d,%ecx
  mov    %cl,(%rbx)
  lea    0x1(%rax),%ecx
  cmp    %ecx,%esi
  jle    L194
  movslq %ecx,%rcx
  movzbl (%rdx,%rcx,1),%r10d
  lea    (%rdi,%rcx,1),%rbx
  movzbl (%rbx),%r11d
  imul   %r8d,%r10d
  imul   %r9d,%r11d
  movslq %r10d,%rcx
  sar    $0x1f,%r10d
  imul   $0x51eb851f,%rcx,%rcx
  sar    $0x25,%rcx
  sub    %r10d,%ecx
  movslq %r11d,%r10
  sar    $0x1f,%r11d
  imul   $0x51eb851f,%r10,%r10
  sar    $0x25,%r10
  sub    %r11d,%r10d
  add    %r10d,%ecx
  mov    %cl,(%rbx)
  lea    0x2(%rax),%ecx
  cmp    %ecx,%esi
  jle    L194
  movslq %ecx,%rcx
  movzbl (%rdx,%rcx,1),%r10d
  lea    (%rdi,%rcx,1),%rbx
  movzbl (%rbx),%r11d
  imul   %r8d,%r10d
  imul   %r9d,%r11d
  movslq %r10d,%rcx
  sar    $0x1f,%r10d
  imul   $0x51eb851f,%rcx,%rcx
  sar    $0x25,%rcx
  sub    %r10d,%ecx
  movslq %r11d,%r10
  sar    $0x1f,%r11d
  imul   $0x51eb851f,%r10,%r10
  sar    $0x25,%r10
  sub    %r11d,%r10d
  add    %r10d,%ecx
  mov    %cl,(%rbx)
  lea    0x3(%rax),%ecx
  cmp    %ecx,%esi
  jle    L194
  movslq %ecx,%rcx
  movzbl (%rdx,%rcx,1),%r10d
  lea    (%rdi,%rcx,1),%rbx
  movzbl (%rbx),%r11d
  imul   %r8d,%r10d
  imul   %r9d,%r11d
  movslq %r10d,%rcx
  sar    $0x1f,%r10d
  imul   $0x51eb851f,%rcx,%rcx
  sar    $0x25,%rcx
  sub    %r10d,%ecx
  movslq %r11d,%r10
  sar    $0x1f,%r11d
  imul   $0x51eb851f,%r10,%r10
  sar    $0x25,%r10
  sub    %r11d,%r10d
  add    %r10d,%ecx
  mov    %cl,(%rbx)
  lea    0x4(%rax),%ecx
  cmp    %ecx,%esi
  jle    L194
  movslq %ecx,%rcx
  movzbl (%rdx,%rcx,1),%r10d
  lea    (%rdi,%rcx,1),%rbx
  movzbl (%rbx),%r11d
  imul   %r8d,%r10d
  imul   %r9d,%r11d
  movslq %r10d,%rcx
  sar    $0x1f,%r10d
  imul   $0x51eb851f,%rcx,%rcx
  sar    $0x25,%rcx
  sub    %r10d,%ecx
  movslq %r11d,%r10
  sar    $0x1f,%r11d
  imul   $0x51eb851f,%r10,%r10
  sar    $0x25,%r10
  sub    %r11d,%r10d
  add    %r10d,%ecx
  mov    %cl,(%rbx)
  lea    0x5(%rax),%ecx
  cmp    %ecx,%esi
  jle    L194
  movslq %ecx,%rcx
  movzbl (%rdx,%rcx,1),%r10d
  lea    (%rdi,%rcx,1),%rbx
  movzbl (%rbx),%r11d
  imul   %r8d,%r10d
  imul   %r9d,%r11d
  movslq %r10d,%rcx
  sar    $0x1f,%r10d
  imul   $0x51eb851f,%rcx,%rcx
  sar    $0x25,%rcx
  sub    %r10d,%ecx
  movslq %r11d,%r10
  sar    $0x1f,%r11d
  imul   $0x51eb851f,%r10,%r10
  sar    $0x25,%r10
  sub    %r11d,%r10d
  add    %r10d,%ecx
  mov    %cl,(%rbx)
  lea    0x6(%rax),%ecx
  cmp    %ecx,%esi
  jle    L194
  movslq %ecx,%rcx
  movzbl (%rdx,%rcx,1),%r10d
  lea    (%rdi,%rcx,1),%rbx
  movzbl (%rbx),%r11d
  imul   %r8d,%r10d
  imul   %r9d,%r11d
  movslq %r10d,%rcx
  sar    $0x1f,%r10d
  imul   $0x51eb851f,%rcx,%rcx
  sar    $0x25,%rcx
  sub    %r10d,%ecx
  movslq %r11d,%r10
  sar    $0x1f,%r11d
  imul   $0x51eb851f,%r10,%r10
  sar    $0x25,%r10
  sub    %r11d,%r10d
  add    %r10d,%ecx
  mov    %cl,(%rbx)
  lea    0x7(%rax),%ecx
  cmp    %ecx,%esi
  jle    L194
  movslq %ecx,%rcx
  movzbl (%rdx,%rcx,1),%r10d
  lea    (%rdi,%rcx,1),%rbx
  movzbl (%rbx),%r11d
  imul   %r8d,%r10d
  imul   %r9d,%r11d
  movslq %r10d,%rcx
  sar    $0x1f,%r10d
  imul   $0x51eb851f,%rcx,%rcx
  sar    $0x25,%rcx
  sub    %r10d,%ecx
  movslq %r11d,%r10
  sar    $0x1f,%r11d
  imul   $0x51eb851f,%r10,%r10
  sar    $0x25,%r10
  sub    %r11d,%r10d
  add    %r10d,%ecx
  mov    %cl,(%rbx)
  lea    0x8(%rax),%ecx
  cmp    %ecx,%esi
  jle    L194
  movslq %ecx,%rcx
  movzbl (%rdx,%rcx,1),%r10d
  lea    (%rdi,%rcx,1),%rbx
  movzbl (%rbx),%r11d
  imul   %r8d,%r10d
  imul   %r9d,%r11d
  movslq %r10d,%rcx
  sar    $0x1f,%r10d
  imul   $0x51eb851f,%rcx,%rcx
  sar    $0x25,%rcx
  sub    %r10d,%ecx
  movslq %r11d,%r10
  sar    $0x1f,%r11d
  imul   $0x51eb851f,%r10,%r10
  sar    $0x25,%r10
  sub    %r11d,%r10d
  add    %r10d,%ecx
  mov    %cl,(%rbx)
  lea    0x9(%rax),%ecx
  cmp    %ecx,%esi
  jle    L194
  movslq %ecx,%rcx
  movzbl (%rdx,%rcx,1),%r10d
  lea    (%rdi,%rcx,1),%rbx
  movzbl (%rbx),%r11d
  imul   %r8d,%r10d
  imul   %r9d,%r11d
  movslq %r10d,%rcx
  sar    $0x1f,%r10d
  imul   $0x51eb851f,%rcx,%rcx
  sar    $0x25,%rcx
  sub    %r10d,%ecx
  movslq %r11d,%r10
  sar    $0x1f,%r11d
  imul   $0x51eb851f,%r10,%r10
  sar    $0x25,%r10
  sub    %r11d,%r10d
  add    %r10d,%ecx
  mov    %cl,(%rbx)
  lea    0xa(%rax),%ecx
  cmp    %ecx,%esi
  jle    L194
  movslq %ecx,%rcx
  movzbl (%rdx,%rcx,1),%r10d
  lea    (%rdi,%rcx,1),%rbx
  movzbl (%rbx),%r11d
  imul   %r8d,%r10d
  imul   %r9d,%r11d
  movslq %r10d,%rcx
  sar    $0x1f,%r10d
  imul   $0x51eb851f,%rcx,%rcx
  sar    $0x25,%rcx
  sub    %r10d,%ecx
  movslq %r11d,%r10
  sar    $0x1f,%r11d
  imul   $0x51eb851f,%r10,%r10
  sar    $0x25,%r10
  sub    %r11d,%r10d
  add    %r10d,%ecx
  mov    %cl,(%rbx)
  lea    0xb(%rax),%ecx
  cmp    %ecx,%esi
  jle    L194
  movslq %ecx,%rcx
  movzbl (%rdx,%rcx,1),%r10d
  lea    (%rdi,%rcx,1),%rbx
  movzbl (%rbx),%r11d
  imul   %r8d,%r10d
  imul   %r9d,%r11d
  movslq %r10d,%rcx
  sar    $0x1f,%r10d
  imul   $0x51eb851f,%rcx,%rcx
  sar    $0x25,%rcx
  sub    %r10d,%ecx
  movslq %r11d,%r10
  sar    $0x1f,%r11d
  imul   $0x51eb851f,%r10,%r10
  sar    $0x25,%r10
  sub    %r11d,%r10d
  add    %r10d,%ecx
  mov    %cl,(%rbx)
  lea    0xc(%rax),%ecx
  cmp    %ecx,%esi
  jle    L194
  movslq %ecx,%rcx
  movzbl (%rdx,%rcx,1),%r10d
  lea    (%rdi,%rcx,1),%rbx
  movzbl (%rbx),%r11d
  imul   %r8d,%r10d
  imul   %r9d,%r11d
  movslq %r10d,%rcx
  sar    $0x1f,%r10d
  imul   $0x51eb851f,%rcx,%rcx
  sar    $0x25,%rcx
  sub    %r10d,%ecx
  movslq %r11d,%r10
  sar    $0x1f,%r11d
  imul   $0x51eb851f,%r10,%r10
  sar    $0x25,%r10
  sub    %r11d,%r10d
  add    %r10d,%ecx
  mov    %cl,(%rbx)
  lea    0xd(%rax),%ecx
  cmp    %ecx,%esi
  jle    L194
  movslq %ecx,%rcx
  add    $0xe,%eax
  movzbl (%rdx,%rcx,1),%r10d
  lea    (%rdi,%rcx,1),%rbx
  movzbl (%rbx),%r11d
  imul   %r8d,%r10d
  imul   %r9d,%r11d
  movslq %r10d,%rcx
  sar    $0x1f,%r10d
  imul   $0x51eb851f,%rcx,%rcx
  sar    $0x25,%rcx
  sub    %r10d,%ecx
  movslq %r11d,%r10
  sar    $0x1f,%r11d
  imul   $0x51eb851f,%r10,%r10
  sar    $0x25,%r10
  sub    %r11d,%r10d
  add    %r10d,%ecx
  mov    %cl,(%rbx)
  cmp    %eax,%esi
  jle    L194
  cltq
  movzbl (%rdx,%rax,1),%edx
  add    %rax,%rdi
  movzbl (%rdi),%ecx
  imul   %r8d,%edx
  imul   %r9d,%ecx
  movslq %edx,%rax
  sar    $0x1f,%edx
  imul   $0x51eb851f,%rax,%rax
  sar    $0x25,%rax
  sub    %edx,%eax
  movslq %ecx,%rdx
  sar    $0x1f,%ecx
  imul   $0x51eb851f,%rdx,%rdx
  sar    $0x25,%rdx
  sub    %ecx,%edx
  add    %edx,%eax
  mov    %al,(%rdi)
L194:
  pop    %rbx
  ret
  nopl   0x0(%rax,%rax,1)
L83:
  xor    %r10d,%r10d
  nopl   0x0(%rax,%rax,1)
L175:
  movzbl (%rdi,%r10,1),%ecx
  movzbl (%rdx,%r10,1),%r11d
  imul   %r9d,%ecx
  imul   %r8d,%r11d
  movslq %ecx,%rax
  sar    $0x1f,%ecx
  imul   $0x51eb851f,%rax,%rax
  sar    $0x25,%rax
  sub    %ecx,%eax
  movslq %r11d,%rcx
  sar    $0x1f,%r11d
  imul   $0x51eb851f,%rcx,%rcx
  sar    $0x25,%rcx
  sub    %r11d,%ecx
  add    %ecx,%eax
  mov    %al,(%rdi,%r10,1)
  add    $0x1,%r10
  cmp    %rsi,%r10
  jne    L175
  ret
  nopw   0x0(%rax,%rax,1)
L109:
  ret
```

tool_calls: name: unpack_data
arguments: data_tag: D46
type_guessed: byte[16]
name: unpack_data
arguments: data_tag: D19
type_guessed: byte[16]

tool: {"D46": [0x1f,0x85,0xeb,0x51,0x1f,0x85,0xeb,0x51,0x1f,0x85,0xeb,0x51,0x1f,0x85,0xeb,0x51]}

tool: {"D19": [0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00]}

assistant: ```c
void alpha_compose(unsigned char *dst, int width, int height, unsigned char *src, int perc) {
  int i;
  for (i = 0; i < width * height * 3; ++i)
    dst[i] = dst[i] * (100 - perc) / 100 + src[i] * perc / 100;
}
```