user: 请将这段汇编代码片段转换成等效的C代码:

```asm
<expand>:
  endbr64
  push   %r15
  push   %r14
  push   %r13
  push   %r12
  mov    %rsi,%r12
  push   %rbp
  push   %rbx
  sub    $0x18,%rsp
  movzbl (%rdi),%eax
  test   %al,%al
  je     L307
  mov    %rdi,%rdx
  xor    %ebp,%ebp
  xor    %ebx,%ebx
  xor    %r15d,%r15d
  jmp    L9
  nopl   0x0(%rax)
L304:
  mov    %al,0x0(%r13)
  add    $0x1,%ebp
  movslq %ebp,%r15
L159:
  add    $0x1,%rbx
  movzbl (%rdx,%rbx,1),%eax
  test   %al,%al
  je     L266
L9:
  lea    (%r12,%r15,1),%r13
  cmp    $0x2d,%al
  jne    L304
  test   %rbx,%rbx
  je     L126
  movsbl -0x1(%rdx,%rbx,1),%r14d
  add    $0x1,%r14d
L285:
  movsbl 0x1(%rdx,%rbx,1),%eax
  test   %al,%al
  je     L19
  sub    $0x1,%eax
L164:
  cmp    %eax,%r14d
  jg     L159
  mov    %eax,%esi
  sub    %r14d,%esi
  lea    0x1(%rsi),%edi
  cmp    $0xe,%esi
  jbe    L145
  movdqa D430(%rip),%xmm1
  movd   %r14d,%xmm7
  movdqa D231(%rip),%xmm3
  mov    %edi,%ecx
  pshufd $0x0,%xmm7,%xmm0
  movdqa D104(%rip),%xmm5
  movdqa D382(%rip),%xmm4
  shr    $0x4,%ecx
  paddd  %xmm0,%xmm3
  paddd  %xmm0,%xmm1
  movdqa %xmm1,%xmm2
  punpcklwd %xmm3,%xmm1
  paddd  %xmm0,%xmm5
  punpckhwd %xmm3,%xmm2
  movdqa %xmm1,%xmm3
  paddd  %xmm0,%xmm4
  punpckhwd %xmm2,%xmm3
  punpcklwd %xmm2,%xmm1
  punpcklwd %xmm3,%xmm1
  movdqa D120(%rip),%xmm3
  paddd  %xmm0,%xmm3
  movdqa %xmm3,%xmm2
  punpcklwd %xmm5,%xmm3
  punpckhwd %xmm5,%xmm2
  movdqa %xmm3,%xmm5
  punpckhwd %xmm2,%xmm5
  punpcklwd %xmm2,%xmm3
  movdqa D375(%rip),%xmm2
  punpcklwd %xmm5,%xmm3
  pand   %xmm2,%xmm1
  pand   %xmm2,%xmm3
  packuswb %xmm3,%xmm1
  movups %xmm1,0x0(%r13)
  cmp    $0x1,%ecx
  je     L179
  movdqa D523(%rip),%xmm6
  movdqa %xmm4,%xmm1
  movdqa %xmm4,%xmm3
  movdqa D605(%rip),%xmm5
  paddd  %xmm0,%xmm6
  paddd  %xmm0,%xmm5
  punpcklwd %xmm6,%xmm1
  punpckhwd %xmm6,%xmm3
  movdqa D370(%rip),%xmm6
  movdqa %xmm1,%xmm4
  punpcklwd %xmm3,%xmm1
  punpckhwd %xmm3,%xmm4
  movdqa D54(%rip),%xmm3
  paddd  %xmm0,%xmm6
  punpcklwd %xmm4,%xmm1
  paddd  %xmm0,%xmm3
  pand   %xmm2,%xmm1
  movdqa %xmm3,%xmm4
  punpcklwd %xmm6,%xmm3
  punpckhwd %xmm6,%xmm4
  movdqa %xmm3,%xmm6
  punpckhwd %xmm4,%xmm6
  punpcklwd %xmm4,%xmm3
  punpcklwd %xmm6,%xmm3
  pand   %xmm2,%xmm3
  packuswb %xmm3,%xmm1
  movups %xmm1,0x10(%r13)
  cmp    $0x2,%ecx
  je     L179
  movdqa D213(%rip),%xmm6
  movdqa %xmm5,%xmm1
  movdqa %xmm5,%xmm3
  movdqa D460(%rip),%xmm4
  paddd  %xmm0,%xmm6
  paddd  %xmm0,%xmm4
  punpcklwd %xmm6,%xmm1
  punpckhwd %xmm6,%xmm3
  movdqa D338(%rip),%xmm6
  movdqa %xmm1,%xmm5
  punpcklwd %xmm3,%xmm1
  punpckhwd %xmm3,%xmm5
  movdqa D544(%rip),%xmm3
  paddd  %xmm0,%xmm6
  punpcklwd %xmm5,%xmm1
  paddd  %xmm0,%xmm3
  pand   %xmm2,%xmm1
  movdqa %xmm3,%xmm5
  punpcklwd %xmm6,%xmm3
  punpckhwd %xmm6,%xmm5
  movdqa %xmm3,%xmm6
  punpckhwd %xmm5,%xmm6
  punpcklwd %xmm5,%xmm3
  punpcklwd %xmm6,%xmm3
  pand   %xmm2,%xmm3
  packuswb %xmm3,%xmm1
  movups %xmm1,0x20(%r13)
  cmp    $0x3,%ecx
  je     L179
  movdqa D25(%rip),%xmm6
  movdqa %xmm4,%xmm1
  movdqa %xmm4,%xmm3
  movdqa D80(%rip),%xmm5
  paddd  %xmm0,%xmm6
  paddd  %xmm0,%xmm5
  punpcklwd %xmm6,%xmm1
  punpckhwd %xmm6,%xmm3
  movdqa D177(%rip),%xmm6
  movdqa %xmm1,%xmm4
  punpcklwd %xmm3,%xmm1
  punpckhwd %xmm3,%xmm4
  movdqa D336(%rip),%xmm3
  paddd  %xmm0,%xmm6
  punpcklwd %xmm4,%xmm1
  paddd  %xmm0,%xmm3
  pand   %xmm2,%xmm1
  movdqa %xmm3,%xmm4
  punpcklwd %xmm6,%xmm3
  punpckhwd %xmm6,%xmm4
  movdqa %xmm3,%xmm6
  punpckhwd %xmm4,%xmm6
  punpcklwd %xmm4,%xmm3
  punpcklwd %xmm6,%xmm3
  pand   %xmm2,%xmm3
  packuswb %xmm3,%xmm1
  movups %xmm1,0x30(%r13)
  cmp    $0x4,%ecx
  je     L179
  movdqa D46(%rip),%xmm6
  movdqa %xmm5,%xmm1
  movdqa %xmm5,%xmm3
  movdqa D32(%rip),%xmm4
  paddd  %xmm0,%xmm6
  paddd  %xmm0,%xmm4
  punpcklwd %xmm6,%xmm1
  punpckhwd %xmm6,%xmm3
  movdqa D484(%rip),%xmm6
  movdqa %xmm1,%xmm5
  punpcklwd %xmm3,%xmm1
  punpckhwd %xmm3,%xmm5
  movdqa D53(%rip),%xmm3
  paddd  %xmm0,%xmm6
  punpcklwd %xmm5,%xmm1
  paddd  %xmm0,%xmm3
  pand   %xmm2,%xmm1
  movdqa %xmm3,%xmm5
  punpcklwd %xmm6,%xmm3
  punpckhwd %xmm6,%xmm5
  movdqa %xmm3,%xmm6
  punpckhwd %xmm5,%xmm6
  punpcklwd %xmm5,%xmm3
  punpcklwd %xmm6,%xmm3
  pand   %xmm2,%xmm3
  packuswb %xmm3,%xmm1
  movups %xmm1,0x40(%r13)
  cmp    $0x5,%ecx
  je     L179
  movdqa D152(%rip),%xmm6
  movdqa %xmm4,%xmm1
  movdqa %xmm4,%xmm3
  movdqa D598(%rip),%xmm5
  paddd  %xmm0,%xmm6
  paddd  %xmm0,%xmm5
  punpcklwd %xmm6,%xmm1
  punpckhwd %xmm6,%xmm3
  movdqa D499(%rip),%xmm6
  movdqa %xmm1,%xmm4
  punpcklwd %xmm3,%xmm1
  punpckhwd %xmm3,%xmm4
  movdqa D101(%rip),%xmm3
  paddd  %xmm0,%xmm6
  punpcklwd %xmm4,%xmm1
  paddd  %xmm0,%xmm3
  pand   %xmm2,%xmm1
  movdqa %xmm3,%xmm4
  punpcklwd %xmm6,%xmm3
  punpckhwd %xmm6,%xmm4
  movdqa %xmm3,%xmm6
  punpckhwd %xmm4,%xmm6
  punpcklwd %xmm4,%xmm3
  punpcklwd %xmm6,%xmm3
  pand   %xmm2,%xmm3
  packuswb %xmm3,%xmm1
  movups %xmm1,0x50(%r13)
  cmp    $0x6,%ecx
  je     L179
  movdqa D117(%rip),%xmm6
  movdqa %xmm5,%xmm1
  movdqa %xmm5,%xmm3
  movdqa D220(%rip),%xmm4
  paddd  %xmm0,%xmm6
  paddd  %xmm0,%xmm4
  punpcklwd %xmm6,%xmm1
  punpckhwd %xmm6,%xmm3
  movdqa D593(%rip),%xmm6
  movdqa %xmm1,%xmm5
  punpcklwd %xmm3,%xmm1
  punpckhwd %xmm3,%xmm5
  movdqa D559(%rip),%xmm3
  paddd  %xmm0,%xmm6
  punpcklwd %xmm5,%xmm1
  paddd  %xmm0,%xmm3
  pand   %xmm2,%xmm1
  movdqa %xmm3,%xmm5
  punpcklwd %xmm6,%xmm3
  punpckhwd %xmm6,%xmm5
  movdqa %xmm3,%xmm6
  punpckhwd %xmm5,%xmm6
  punpcklwd %xmm5,%xmm3
  punpcklwd %xmm6,%xmm3
  pand   %xmm2,%xmm3
  packuswb %xmm3,%xmm1
  movups %xmm1,0x60(%r13)
  cmp    $0x7,%ecx
  je     L179
  movdqa D278(%rip),%xmm6
  movdqa %xmm4,%xmm1
  movdqa %xmm4,%xmm3
  movdqa D268(%rip),%xmm5
  paddd  %xmm0,%xmm6
  paddd  %xmm0,%xmm5
  punpcklwd %xmm6,%xmm1
  punpckhwd %xmm6,%xmm3
  movdqa D288(%rip),%xmm6
  movdqa %xmm1,%xmm4
  punpcklwd %xmm3,%xmm1
  punpckhwd %xmm3,%xmm4
  movdqa D280(%rip),%xmm3
  paddd  %xmm0,%xmm6
  punpcklwd %xmm4,%xmm1
  paddd  %xmm0,%xmm3
  pand   %xmm2,%xmm1
  movdqa %xmm3,%xmm4
  punpcklwd %xmm6,%xmm3
  punpckhwd %xmm6,%xmm4
  movdqa %xmm3,%xmm6
  punpckhwd %xmm4,%xmm6
  punpcklwd %xmm4,%xmm3
  punpcklwd %xmm6,%xmm3
  pand   %xmm2,%xmm3
  packuswb %xmm3,%xmm1
  movups %xmm1,0x70(%r13)
  cmp    $0x8,%ecx
  je     L179
  movdqa D470(%rip),%xmm6
  movdqa %xmm5,%xmm1
  movdqa %xmm5,%xmm3
  movdqa D223(%rip),%xmm4
  paddd  %xmm0,%xmm6
  paddd  %xmm0,%xmm4
  punpcklwd %xmm6,%xmm1
  punpckhwd %xmm6,%xmm3
  movdqa D535(%rip),%xmm6
  movdqa %xmm1,%xmm5
  punpcklwd %xmm3,%xmm1
  punpckhwd %xmm3,%xmm5
  movdqa D448(%rip),%xmm3
  paddd  %xmm0,%xmm6
  punpcklwd %xmm5,%xmm1
  paddd  %xmm0,%xmm3
  pand   %xmm2,%xmm1
  movdqa %xmm3,%xmm5
  punpcklwd %xmm6,%xmm3
  punpckhwd %xmm6,%xmm5
  movdqa %xmm3,%xmm6
  punpckhwd %xmm5,%xmm6
  punpcklwd %xmm5,%xmm3
  punpcklwd %xmm6,%xmm3
  pand   %xmm2,%xmm3
  packuswb %xmm3,%xmm1
  movups %xmm1,0x80(%r13)
  cmp    $0x9,%ecx
  je     L179
  movdqa D573(%rip),%xmm6
  movdqa %xmm4,%xmm1
  movdqa %xmm4,%xmm3
  movdqa D395(%rip),%xmm5
  paddd  %xmm0,%xmm6
  paddd  %xmm0,%xmm5
  punpcklwd %xmm6,%xmm1
  punpckhwd %xmm6,%xmm3
  movdqa D264(%rip),%xmm6
  movdqa %xmm1,%xmm4
  punpcklwd %xmm3,%xmm1
  punpckhwd %xmm3,%xmm4
  movdqa D210(%rip),%xmm3
  paddd  %xmm0,%xmm6
  punpcklwd %xmm4,%xmm1
  paddd  %xmm0,%xmm3
  pand   %xmm2,%xmm1
  movdqa %xmm3,%xmm4
  punpcklwd %xmm6,%xmm3
  punpckhwd %xmm6,%xmm4
  movdqa %xmm3,%xmm6
  punpckhwd %xmm4,%xmm6
  punpcklwd %xmm4,%xmm3
  punpcklwd %xmm6,%xmm3
  pand   %xmm2,%xmm3
  packuswb %xmm3,%xmm1
  movups %xmm1,0x90(%r13)
  cmp    $0xa,%ecx
  je     L179
  movdqa D62(%rip),%xmm6
  movdqa %xmm5,%xmm1
  movdqa %xmm5,%xmm3
  movdqa D233(%rip),%xmm4
  paddd  %xmm0,%xmm6
  paddd  %xmm0,%xmm4
  punpcklwd %xmm6,%xmm1
  punpckhwd %xmm6,%xmm3
  movdqa D525(%rip),%xmm6
  movdqa %xmm1,%xmm5
  punpcklwd %xmm3,%xmm1
  punpckhwd %xmm3,%xmm5
  movdqa D306(%rip),%xmm3
  paddd  %xmm0,%xmm6
  punpcklwd %xmm5,%xmm1
  paddd  %xmm0,%xmm3
  pand   %xmm2,%xmm1
  movdqa %xmm3,%xmm5
  punpcklwd %xmm6,%xmm3
  punpckhwd %xmm6,%xmm5
  movdqa %xmm3,%xmm6
  punpckhwd %xmm5,%xmm6
  punpcklwd %xmm5,%xmm3
  punpcklwd %xmm6,%xmm3
  pand   %xmm2,%xmm3
  packuswb %xmm3,%xmm1
  movups %xmm1,0xa0(%r13)
  cmp    $0xb,%ecx
  je     L179
  movdqa D590(%rip),%xmm6
  movdqa %xmm4,%xmm1
  movdqa %xmm4,%xmm3
  movdqa D341(%rip),%xmm5
  paddd  %xmm0,%xmm6
  paddd  %xmm0,%xmm5
  punpcklwd %xmm6,%xmm1
  punpckhwd %xmm6,%xmm3
  movdqa D584(%rip),%xmm6
  movdqa %xmm1,%xmm4
  punpcklwd %xmm3,%xmm1
  punpckhwd %xmm3,%xmm4
  movdqa D20(%rip),%xmm3
  paddd  %xmm0,%xmm6
  punpcklwd %xmm4,%xmm1
  paddd  %xmm0,%xmm3
  pand   %xmm2,%xmm1
  movdqa %xmm3,%xmm4
  punpcklwd %xmm6,%xmm3
  punpckhwd %xmm6,%xmm4
  movdqa %xmm3,%xmm6
  punpckhwd %xmm4,%xmm6
  punpcklwd %xmm4,%xmm3
  punpcklwd %xmm6,%xmm3
  pand   %xmm2,%xmm3
  packuswb %xmm3,%xmm1
  movups %xmm1,0xb0(%r13)
  cmp    $0xc,%ecx
  je     L179
  movdqa D144(%rip),%xmm6
  movdqa %xmm5,%xmm1
  movdqa %xmm5,%xmm3
  movdqa D259(%rip),%xmm4
  paddd  %xmm0,%xmm6
  paddd  %xmm0,%xmm4
  punpcklwd %xmm6,%xmm1
  punpckhwd %xmm6,%xmm3
  movdqa D201(%rip),%xmm6
  movdqa %xmm1,%xmm5
  punpcklwd %xmm3,%xmm1
  punpckhwd %xmm3,%xmm5
  movdqa D520(%rip),%xmm3
  paddd  %xmm0,%xmm6
  punpcklwd %xmm5,%xmm1
  paddd  %xmm0,%xmm3
  pand   %xmm2,%xmm1
  movdqa %xmm3,%xmm5
  punpcklwd %xmm6,%xmm3
  punpckhwd %xmm6,%xmm5
  movdqa %xmm3,%xmm6
  punpckhwd %xmm5,%xmm6
  punpcklwd %xmm5,%xmm3
  punpcklwd %xmm6,%xmm3
  pand   %xmm2,%xmm3
  packuswb %xmm3,%xmm1
  movups %xmm1,0xc0(%r13)
  cmp    $0xd,%ecx
  je     L179
  movdqa D16(%rip),%xmm6
  movdqa %xmm4,%xmm1
  movdqa %xmm4,%xmm3
  movdqa D95(%rip),%xmm5
  paddd  %xmm0,%xmm6
  paddd  %xmm0,%xmm5
  punpcklwd %xmm6,%xmm1
  punpckhwd %xmm6,%xmm3
  movdqa D409(%rip),%xmm6
  movdqa %xmm1,%xmm4
  punpcklwd %xmm3,%xmm1
  punpckhwd %xmm3,%xmm4
  movdqa D270(%rip),%xmm3
  paddd  %xmm0,%xmm6
  punpcklwd %xmm4,%xmm1
  paddd  %xmm0,%xmm3
  pand   %xmm2,%xmm1
  movdqa %xmm3,%xmm4
  punpcklwd %xmm6,%xmm3
  punpckhwd %xmm6,%xmm4
  movdqa %xmm3,%xmm6
  punpckhwd %xmm4,%xmm6
  punpcklwd %xmm4,%xmm3
  punpcklwd %xmm6,%xmm3
  pand   %xmm2,%xmm3
  packuswb %xmm3,%xmm1
  movups %xmm1,0xd0(%r13)
  cmp    $0xe,%ecx
  je     L179
  movdqa D10(%rip),%xmm4
  movdqa %xmm5,%xmm1
  movdqa %xmm5,%xmm3
  paddd  %xmm0,%xmm4
  punpcklwd %xmm4,%xmm1
  punpckhwd %xmm4,%xmm3
  movdqa %xmm1,%xmm4
  punpcklwd %xmm3,%xmm1
  punpckhwd %xmm3,%xmm4
  movdqa D285(%rip),%xmm3
  punpcklwd %xmm4,%xmm1
  paddd  %xmm0,%xmm3
  paddd  D23(%rip),%xmm0
  pand   %xmm2,%xmm1
  movdqa %xmm3,%xmm4
  punpcklwd %xmm0,%xmm3
  punpckhwd %xmm0,%xmm4
  movdqa %xmm3,%xmm0
  punpcklwd %xmm4,%xmm3
  punpckhwd %xmm4,%xmm0
  punpcklwd %xmm0,%xmm3
  pand   %xmm3,%xmm2
  packuswb %xmm2,%xmm1
  movups %xmm1,0xe0(%r13)
  nopl   0x0(%rax)
L179:
  mov    %edi,%r8d
  and    $0xfffffff0,%r8d
  lea    0x0(%rbp,%r8,1),%ecx
  add    %r8d,%r14d
  cmp    %r8d,%edi
  je     L386
L14:
  movslq %ecx,%r8
  lea    0x1(%r14),%r9d
  lea    0x1(%rcx),%edi
  mov    %r14b,(%r12,%r8,1)
  cmp    %r9d,%eax
  jl     L386
  movslq %edi,%rdi
  lea    0x2(%rcx),%r8d
  mov    %r9b,(%r12,%rdi,1)
  lea    0x2(%r14),%r9d
  cmp    %r9d,%eax
  jl     L386
  movslq %r8d,%r8
  lea    0x3(%rcx),%edi
  mov    %r9b,(%r12,%r8,1)
  lea    0x3(%r14),%r9d
  cmp    %r9d,%eax
  jl     L386
  movslq %edi,%rdi
  lea    0x4(%rcx),%r8d
  mov    %r9b,(%r12,%rdi,1)
  lea    0x4(%r14),%r9d
  cmp    %r9d,%eax
  jl     L386
  movslq %r8d,%r8
  lea    0x5(%rcx),%edi
  mov    %r9b,(%r12,%r8,1)
  lea    0x5(%r14),%r9d
  cmp    %r9d,%eax
  jl     L386
  movslq %edi,%rdi
  lea    0x6(%rcx),%r8d
  mov    %r9b,(%r12,%rdi,1)
  lea    0x6(%r14),%r9d
  cmp    %r9d,%eax
  jl     L386
  movslq %r8d,%r8
  lea    0x7(%rcx),%edi
  mov    %r9b,(%r12,%r8,1)
  lea    0x7(%r14),%r9d
  cmp    %r9d,%eax
  jl     L386
  movslq %edi,%rdi
  lea    0x8(%rcx),%r8d
  mov    %r9b,(%r12,%rdi,1)
  lea    0x8(%r14),%r9d
  cmp    %r9d,%eax
  jl     L386
  movslq %r8d,%r8
  lea    0x9(%rcx),%edi
  mov    %r9b,(%r12,%r8,1)
  lea    0x9(%r14),%r9d
  cmp    %r9d,%eax
  jl     L386
  movslq %edi,%rdi
  lea    0xa(%rcx),%r8d
  mov    %r9b,(%r12,%rdi,1)
  lea    0xa(%r14),%r9d
  cmp    %r9d,%eax
  jl     L386
  movslq %r8d,%r8
  lea    0xb(%rcx),%edi
  mov    %r9b,(%r12,%r8,1)
  lea    0xb(%r14),%r9d
  cmp    %r9d,%eax
  jl     L386
  movslq %edi,%rdi
  lea    0xc(%rcx),%r8d
  mov    %r9b,(%r12,%rdi,1)
  lea    0xc(%r14),%r9d
  cmp    %r9d,%eax
  jl     L386
  movslq %r8d,%r8
  lea    0xd(%rcx),%edi
  mov    %r9b,(%r12,%r8,1)
  lea    0xd(%r14),%r8d
  cmp    %r8d,%eax
  jl     L386
  movslq %edi,%rdi
  add    $0xe,%r14d
  add    $0xe,%ecx
  mov    %r8b,(%r12,%rdi,1)
  cmp    %r14d,%eax
  jl     L386
  movslq %ecx,%rcx
  mov    %r14b,(%r12,%rcx,1)
  nop
L386:
  add    $0x1,%rbx
  lea    0x1(%rbp,%rsi,1),%ebp
  movzbl (%rdx,%rbx,1),%eax
  movslq %ebp,%r15
  test   %al,%al
  jne    L9
  nopw   0x0(%rax,%rax,1)
L266:
  add    %r15,%r12
L307:
  movb   $0x0,(%r12)
  add    $0x18,%rsp
  pop    %rbx
  pop    %rbp
  pop    %r12
  pop    %r13
  pop    %r14
  pop    %r15
  ret
  nopw   0x0(%rax,%rax,1)
L19:
  movsbl -0x1(%rdx,%rbx,1),%edi
  mov    %rdx,(%rsp)
  call   <isdigit@plt>
  mov    (%rsp),%rdx
  mov    %rax,%r8
  mov    $0x39,%eax
  test   %r8,%r8
  jne    L164
  movsbl -0x1(%rdx,%rbx,1),%edi
  call   <islower@plt>
  mov    (%rsp),%rdx
  cmp    $0x1,%rax
  sbb    %eax,%eax
  and    $0xffffffe0,%eax
  add    $0x7a,%eax
  jmp    L164
  nopw   0x0(%rax,%rax,1)
L126:
  movsbl 0x1(%rdx),%edi
  mov    %rdx,0x8(%rsp)
  mov    $0x30,%r14d
  mov    %edi,(%rsp)
  call   <isdigit@plt>
  mov    (%rsp),%edi
  mov    0x8(%rsp),%rdx
  test   %rax,%rax
  jne    L285
  mov    %rdx,(%rsp)
  call   <islower@plt>
  mov    (%rsp),%rdx
  cmp    $0x1,%rax
  sbb    %r14d,%r14d
  and    $0xffffffe0,%r14d
  add    $0x61,%r14d
  jmp    L285
L145:
  mov    %ebp,%ecx
  jmp    L14
```

tool_calls: name: read_data
arguments: data_label: D430
data_type: byte[16]
name: read_data
arguments: data_label: D231
data_type: byte[16]
name: read_data
arguments: data_label: D104
data_type: byte[16]
name: read_data
arguments: data_label: D382
data_type: byte[16]
name: read_data
arguments: data_label: D120
data_type: byte[16]
name: read_data
arguments: data_label: D375
data_type: byte[16]
name: read_data
arguments: data_label: D523
data_type: byte[16]
name: read_data
arguments: data_label: D605
data_type: byte[16]
name: read_data
arguments: data_label: D370
data_type: byte[16]
name: read_data
arguments: data_label: D54
data_type: byte[16]
name: read_data
arguments: data_label: D213
data_type: byte[16]
name: read_data
arguments: data_label: D460
data_type: byte[16]
name: read_data
arguments: data_label: D338
data_type: byte[16]
name: read_data
arguments: data_label: D544
data_type: byte[16]
name: read_data
arguments: data_label: D25
data_type: byte[16]
name: read_data
arguments: data_label: D80
data_type: byte[16]
name: read_data
arguments: data_label: D177
data_type: byte[16]
name: read_data
arguments: data_label: D336
data_type: byte[16]
name: read_data
arguments: data_label: D46
data_type: byte[16]
name: read_data
arguments: data_label: D32
data_type: byte[16]
name: read_data
arguments: data_label: D484
data_type: byte[16]
name: read_data
arguments: data_label: D53
data_type: byte[16]
name: read_data
arguments: data_label: D152
data_type: byte[16]
name: read_data
arguments: data_label: D598
data_type: byte[16]
name: read_data
arguments: data_label: D499
data_type: byte[16]
name: read_data
arguments: data_label: D101
data_type: byte[16]
name: read_data
arguments: data_label: D117
data_type: byte[16]
name: read_data
arguments: data_label: D220
data_type: byte[16]
name: read_data
arguments: data_label: D593
data_type: byte[16]
name: read_data
arguments: data_label: D559
data_type: byte[16]
name: read_data
arguments: data_label: D278
data_type: byte[16]
name: read_data
arguments: data_label: D268
data_type: byte[16]
name: read_data
arguments: data_label: D288
data_type: byte[16]
name: read_data
arguments: data_label: D280
data_type: byte[16]
name: read_data
arguments: data_label: D470
data_type: byte[16]
name: read_data
arguments: data_label: D223
data_type: byte[16]
name: read_data
arguments: data_label: D535
data_type: byte[16]
name: read_data
arguments: data_label: D448
data_type: byte[16]
name: read_data
arguments: data_label: D573
data_type: byte[16]
name: read_data
arguments: data_label: D395
data_type: byte[16]
name: read_data
arguments: data_label: D264
data_type: byte[16]
name: read_data
arguments: data_label: D210
data_type: byte[16]
name: read_data
arguments: data_label: D62
data_type: byte[16]
name: read_data
arguments: data_label: D233
data_type: byte[16]
name: read_data
arguments: data_label: D525
data_type: byte[16]
name: read_data
arguments: data_label: D306
data_type: byte[16]
name: read_data
arguments: data_label: D590
data_type: byte[16]
name: read_data
arguments: data_label: D341
data_type: byte[16]
name: read_data
arguments: data_label: D584
data_type: byte[16]
name: read_data
arguments: data_label: D20
data_type: byte[16]
name: read_data
arguments: data_label: D144
data_type: byte[16]
name: read_data
arguments: data_label: D259
data_type: byte[16]
name: read_data
arguments: data_label: D201
data_type: byte[16]
name: read_data
arguments: data_label: D520
data_type: byte[16]
name: read_data
arguments: data_label: D16
data_type: byte[16]
name: read_data
arguments: data_label: D95
data_type: byte[16]
name: read_data
arguments: data_label: D409
data_type: byte[16]
name: read_data
arguments: data_label: D270
data_type: byte[16]
name: read_data
arguments: data_label: D10
data_type: byte[16]
name: read_data
arguments: data_label: D285
data_type: byte[16]
name: read_data
arguments: data_label: D23
data_type: byte[16]

tool: {"D430": [0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x03,0x00,0x00,0x00]}

tool: {"D231": [0x04,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x07,0x00,0x00,0x00]}

tool: {"D104": [0x0c,0x00,0x00,0x00,0x0d,0x00,0x00,0x00,0x0e,0x00,0x00,0x00,0x0f,0x00,0x00,0x00]}

tool: {"D382": [0x10,0x00,0x00,0x00,0x11,0x00,0x00,0x00,0x12,0x00,0x00,0x00,0x13,0x00,0x00,0x00]}

tool: {"D120": [0x08,0x00,0x00,0x00,0x09,0x00,0x00,0x00,0x0a,0x00,0x00,0x00,0x0b,0x00,0x00,0x00]}

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

tool: {"D523": [0x14,0x00,0x00,0x00,0x15,0x00,0x00,0x00,0x16,0x00,0x00,0x00,0x17,0x00,0x00,0x00]}

tool: {"D605": [0x20,0x00,0x00,0x00,0x21,0x00,0x00,0x00,0x22,0x00,0x00,0x00,0x23,0x00,0x00,0x00]}

tool: {"D370": [0x1c,0x00,0x00,0x00,0x1d,0x00,0x00,0x00,0x1e,0x00,0x00,0x00,0x1f,0x00,0x00,0x00]}

tool: {"D54": [0x18,0x00,0x00,0x00,0x19,0x00,0x00,0x00,0x1a,0x00,0x00,0x00,0x1b,0x00,0x00,0x00]}

tool: {"D213": [0x24,0x00,0x00,0x00,0x25,0x00,0x00,0x00,0x26,0x00,0x00,0x00,0x27,0x00,0x00,0x00]}

tool: {"D460": [0x30,0x00,0x00,0x00,0x31,0x00,0x00,0x00,0x32,0x00,0x00,0x00,0x33,0x00,0x00,0x00]}

tool: {"D338": [0x2c,0x00,0x00,0x00,0x2d,0x00,0x00,0x00,0x2e,0x00,0x00,0x00,0x2f,0x00,0x00,0x00]}

tool: {"D544": [0x28,0x00,0x00,0x00,0x29,0x00,0x00,0x00,0x2a,0x00,0x00,0x00,0x2b,0x00,0x00,0x00]}

tool: {"D25": [0x34,0x00,0x00,0x00,0x35,0x00,0x00,0x00,0x36,0x00,0x00,0x00,0x37,0x00,0x00,0x00]}

tool: {"D80": [0x40,0x00,0x00,0x00,0x41,0x00,0x00,0x00,0x42,0x00,0x00,0x00,0x43,0x00,0x00,0x00]}

tool: {"D177": [0x3c,0x00,0x00,0x00,0x3d,0x00,0x00,0x00,0x3e,0x00,0x00,0x00,0x3f,0x00,0x00,0x00]}

tool: {"D336": [0x38,0x00,0x00,0x00,0x39,0x00,0x00,0x00,0x3a,0x00,0x00,0x00,0x3b,0x00,0x00,0x00]}

tool: {"D46": [0x44,0x00,0x00,0x00,0x45,0x00,0x00,0x00,0x46,0x00,0x00,0x00,0x47,0x00,0x00,0x00]}

tool: {"D32": [0x50,0x00,0x00,0x00,0x51,0x00,0x00,0x00,0x52,0x00,0x00,0x00,0x53,0x00,0x00,0x00]}

tool: {"D484": [0x4c,0x00,0x00,0x00,0x4d,0x00,0x00,0x00,0x4e,0x00,0x00,0x00,0x4f,0x00,0x00,0x00]}

tool: {"D53": [0x48,0x00,0x00,0x00,0x49,0x00,0x00,0x00,0x4a,0x00,0x00,0x00,0x4b,0x00,0x00,0x00]}

tool: {"D152": [0x54,0x00,0x00,0x00,0x55,0x00,0x00,0x00,0x56,0x00,0x00,0x00,0x57,0x00,0x00,0x00]}

tool: {"D598": [0x60,0x00,0x00,0x00,0x61,0x00,0x00,0x00,0x62,0x00,0x00,0x00,0x63,0x00,0x00,0x00]}

tool: {"D499": [0x5c,0x00,0x00,0x00,0x5d,0x00,0x00,0x00,0x5e,0x00,0x00,0x00,0x5f,0x00,0x00,0x00]}

tool: {"D101": [0x58,0x00,0x00,0x00,0x59,0x00,0x00,0x00,0x5a,0x00,0x00,0x00,0x5b,0x00,0x00,0x00]}

tool: {"D117": [0x64,0x00,0x00,0x00,0x65,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x67,0x00,0x00,0x00]}

tool: {"D220": [0x70,0x00,0x00,0x00,0x71,0x00,0x00,0x00,0x72,0x00,0x00,0x00,0x73,0x00,0x00,0x00]}

tool: {"D593": [0x6c,0x00,0x00,0x00,0x6d,0x00,0x00,0x00,0x6e,0x00,0x00,0x00,0x6f,0x00,0x00,0x00]}

tool: {"D559": [0x68,0x00,0x00,0x00,0x69,0x00,0x00,0x00,0x6a,0x00,0x00,0x00,0x6b,0x00,0x00,0x00]}

tool: {"D278": [0x74,0x00,0x00,0x00,0x75,0x00,0x00,0x00,0x76,0x00,0x00,0x00,0x77,0x00,0x00,0x00]}

tool: {"D268": [0x80,0x00,0x00,0x00,0x81,0x00,0x00,0x00,0x82,0x00,0x00,0x00,0x83,0x00,0x00,0x00]}

tool: {"D288": [0x7c,0x00,0x00,0x00,0x7d,0x00,0x00,0x00,0x7e,0x00,0x00,0x00,0x7f,0x00,0x00,0x00]}

tool: {"D280": [0x78,0x00,0x00,0x00,0x79,0x00,0x00,0x00,0x7a,0x00,0x00,0x00,0x7b,0x00,0x00,0x00]}

tool: {"D470": [0x84,0x00,0x00,0x00,0x85,0x00,0x00,0x00,0x86,0x00,0x00,0x00,0x87,0x00,0x00,0x00]}

tool: {"D223": [0x90,0x00,0x00,0x00,0x91,0x00,0x00,0x00,0x92,0x00,0x00,0x00,0x93,0x00,0x00,0x00]}

tool: {"D535": [0x8c,0x00,0x00,0x00,0x8d,0x00,0x00,0x00,0x8e,0x00,0x00,0x00,0x8f,0x00,0x00,0x00]}

tool: {"D448": [0x88,0x00,0x00,0x00,0x89,0x00,0x00,0x00,0x8a,0x00,0x00,0x00,0x8b,0x00,0x00,0x00]}

tool: {"D573": [0x94,0x00,0x00,0x00,0x95,0x00,0x00,0x00,0x96,0x00,0x00,0x00,0x97,0x00,0x00,0x00]}

tool: {"D395": [0xa0,0x00,0x00,0x00,0xa1,0x00,0x00,0x00,0xa2,0x00,0x00,0x00,0xa3,0x00,0x00,0x00]}

tool: {"D264": [0x9c,0x00,0x00,0x00,0x9d,0x00,0x00,0x00,0x9e,0x00,0x00,0x00,0x9f,0x00,0x00,0x00]}

tool: {"D210": [0x98,0x00,0x00,0x00,0x99,0x00,0x00,0x00,0x9a,0x00,0x00,0x00,0x9b,0x00,0x00,0x00]}

tool: {"D62": [0xa4,0x00,0x00,0x00,0xa5,0x00,0x00,0x00,0xa6,0x00,0x00,0x00,0xa7,0x00,0x00,0x00]}

tool: {"D233": [0xb0,0x00,0x00,0x00,0xb1,0x00,0x00,0x00,0xb2,0x00,0x00,0x00,0xb3,0x00,0x00,0x00]}

tool: {"D525": [0xac,0x00,0x00,0x00,0xad,0x00,0x00,0x00,0xae,0x00,0x00,0x00,0xaf,0x00,0x00,0x00]}

tool: {"D306": [0xa8,0x00,0x00,0x00,0xa9,0x00,0x00,0x00,0xaa,0x00,0x00,0x00,0xab,0x00,0x00,0x00]}

tool: {"D590": [0xb4,0x00,0x00,0x00,0xb5,0x00,0x00,0x00,0xb6,0x00,0x00,0x00,0xb7,0x00,0x00,0x00]}

tool: {"D341": [0xc0,0x00,0x00,0x00,0xc1,0x00,0x00,0x00,0xc2,0x00,0x00,0x00,0xc3,0x00,0x00,0x00]}

tool: {"D584": [0xbc,0x00,0x00,0x00,0xbd,0x00,0x00,0x00,0xbe,0x00,0x00,0x00,0xbf,0x00,0x00,0x00]}

tool: {"D20": [0xb8,0x00,0x00,0x00,0xb9,0x00,0x00,0x00,0xba,0x00,0x00,0x00,0xbb,0x00,0x00,0x00]}

tool: {"D144": [0xc4,0x00,0x00,0x00,0xc5,0x00,0x00,0x00,0xc6,0x00,0x00,0x00,0xc7,0x00,0x00,0x00]}

tool: {"D259": [0xd0,0x00,0x00,0x00,0xd1,0x00,0x00,0x00,0xd2,0x00,0x00,0x00,0xd3,0x00,0x00,0x00]}

tool: {"D201": [0xcc,0x00,0x00,0x00,0xcd,0x00,0x00,0x00,0xce,0x00,0x00,0x00,0xcf,0x00,0x00,0x00]}

tool: {"D520": [0xc8,0x00,0x00,0x00,0xc9,0x00,0x00,0x00,0xca,0x00,0x00,0x00,0xcb,0x00,0x00,0x00]}

tool: {"D16": [0xd4,0x00,0x00,0x00,0xd5,0x00,0x00,0x00,0xd6,0x00,0x00,0x00,0xd7,0x00,0x00,0x00]}

tool: {"D95": [0xe0,0x00,0x00,0x00,0xe1,0x00,0x00,0x00,0xe2,0x00,0x00,0x00,0xe3,0x00,0x00,0x00]}

tool: {"D409": [0xdc,0x00,0x00,0x00,0xdd,0x00,0x00,0x00,0xde,0x00,0x00,0x00,0xdf,0x00,0x00,0x00]}

tool: {"D270": [0xd8,0x00,0x00,0x00,0xd9,0x00,0x00,0x00,0xda,0x00,0x00,0x00,0xdb,0x00,0x00,0x00]}

tool: {"D10": [0xe4,0x00,0x00,0x00,0xe5,0x00,0x00,0x00,0xe6,0x00,0x00,0x00,0xe7,0x00,0x00,0x00]}

tool: {"D285": [0xe8,0x00,0x00,0x00,0xe9,0x00,0x00,0x00,0xea,0x00,0x00,0x00,0xeb,0x00,0x00,0x00]}

tool: {"D23": [0xec,0x00,0x00,0x00,0xed,0x00,0x00,0x00,0xee,0x00,0x00,0x00,0xef,0x00,0x00,0x00]}

assistant: ```c
void expand(char *s1, char *s2) {
  int i, j, k;
  i = j = 0;
  int min = 0, max = 0;
  for (; s1[i] != '\0'; i++) {
    if (s1[i] == '-') {
      if (i != 0) {
        min = s1[i - 1] + 1;
      } else {
        max = s1[i + 1];
        if (isdigit(max)) {
          min = '0';
        } else if (islower(max)) {
          min = 'a';
        } else {
          min = 'A';
        }
      }
      if (s1[i + 1] != '\0') {
        max = s1[i + 1] - 1;
      } else {
        if (isdigit(s1[i - 1])) {
          max = '9';
        } else if (islower(s1[i - 1])) {
          max = 'z';
        } else {
          max = 'Z';
        }
      }
      for (k = min; k <= max; k++) {
        s2[j++] = k;
      }
    } else {
      s2[j++] = s1[i];
    }
  }
  s2[j] = '\0';
}
```