user: 下面的汇编指令对应的C源代码是什么：

```asm
<nanz>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  push   %rbx
  sub    $0xa8,%rsp
  mov    %fs:0x28,%rax
  mov    %rax,-0x18(%rbp)
  xor    %eax,%eax
  movl   $0x0,-0x98(%rbp)
  mov    -0x98(%rbp),%ebx
  lea    0x1(%rbx),%eax
  mov    %eax,-0x98(%rbp)
  mov    $0x4b4f8d53,%ecx
  mov    $0x2b76effc,%edx
  mov    $0x7d00,%esi
  mov    $0x0,%edi
  call   <make@plt>
  movslq %ebx,%rax
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fstpt  (%rax)
  mov    -0x98(%rbp),%ebx
  lea    0x1(%rbx),%eax
  mov    %eax,-0x98(%rbp)
  mov    $0x15d6c3ac,%ecx
  mov    $0xd7a51587,%edx
  mov    $0x7d01,%esi
  mov    $0x1,%edi
  call   <make@plt>
  movslq %ebx,%rax
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fstpt  (%rax)
  mov    -0x98(%rbp),%ebx
  lea    0x1(%rbx),%eax
  mov    %eax,-0x98(%rbp)
  mov    $0x1,%ecx
  mov    $0x0,%edx
  mov    $0x7fff,%esi
  mov    $0x0,%edi
  call   <make@plt>
  movslq %ebx,%rax
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fstpt  (%rax)
  mov    -0x98(%rbp),%ebx
  lea    0x1(%rbx),%eax
  mov    %eax,-0x98(%rbp)
  mov    $0x0,%ecx
  mov    $0x0,%edx
  mov    $0x7fff,%esi
  mov    $0x0,%edi
  call   <make@plt>
  movslq %ebx,%rax
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fstpt  (%rax)
  mov    -0x98(%rbp),%ebx
  lea    0x1(%rbx),%eax
  mov    %eax,-0x98(%rbp)
  mov    $0x0,%ecx
  mov    $0x0,%edx
  mov    $0x7fff,%esi
  mov    $0x1,%edi
  call   <make@plt>
  movslq %ebx,%rax
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fstpt  (%rax)
  mov    -0x98(%rbp),%ebx
  lea    0x1(%rbx),%eax
  mov    %eax,-0x98(%rbp)
  mov    $0x58f73fc9,%ecx
  mov    $0xc7099ad5,%edx
  mov    $0x7fff,%esi
  mov    $0x1,%edi
  call   <make@plt>
  movslq %ebx,%rax
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fstpt  (%rax)
  mov    -0x98(%rbp),%ebx
  lea    0x1(%rbx),%eax
  mov    %eax,-0x98(%rbp)
  mov    $0x35630666,%ecx
  mov    $0x143360f9,%edx
  mov    $0x7fff,%esi
  mov    $0x0,%edi
  call   <make@plt>
  movslq %ebx,%rax
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fstpt  (%rax)
  cmpl   $0x7,-0x98(%rbp)
  je     L14
  mov    $0xb5,%edx
  lea    D30(%rip),%rax
  mov    %rax,%rsi
  lea    D10(%rip),%rax
  mov    %rax,%rdi
  call   <check_fail@plt>
L14:
  movl   $0x0,-0xa8(%rbp)
  jmp    L6
L104:
  movl   $0x0,-0xa4(%rbp)
  jmp    L40
L84:
  mov    -0xa4(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  mov    -0xa8(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  fxch   %st(1)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  call   <fadd@plt>
  add    $0x20,%rsp
  mov    -0xa4(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  mov    -0xa8(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  fxch   %st(1)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  call   <fsub@plt>
  add    $0x20,%rsp
  mov    -0xa4(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  mov    -0xa8(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  fxch   %st(1)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  call   <fmul@plt>
  add    $0x20,%rsp
  mov    -0xa4(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  mov    -0xa8(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  fxch   %st(1)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  call   <fdiv@plt>
  add    $0x20,%rsp
  addl   $0x1,-0xa4(%rbp)
L40:
  mov    -0xa4(%rbp),%eax
  cmp    -0x98(%rbp),%eax
  jl     L84
  addl   $0x1,-0xa8(%rbp)
L6:
  mov    -0xa8(%rbp),%eax
  cmp    -0x98(%rbp),%eax
  jl     L104
  movl   $0x0,-0x94(%rbp)
  mov    -0x94(%rbp),%ebx
  lea    0x1(%rbx),%eax
  mov    %eax,-0x94(%rbp)
  mov    $0x5edc4044,%ecx
  mov    $0xda85f700,%edx
  mov    $0x7d00,%esi
  mov    $0x1,%edi
  call   <make@plt>
  movslq %ebx,%rax
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fstpt  (%rax)
  mov    -0x94(%rbp),%ebx
  lea    0x1(%rbx),%eax
  mov    %eax,-0x94(%rbp)
  mov    $0x54428e19,%ecx
  mov    $0xabf55af7,%edx
  mov    $0x7d01,%esi
  mov    $0x0,%edi
  call   <make@plt>
  movslq %ebx,%rax
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fstpt  (%rax)
  mov    -0x94(%rbp),%ebx
  lea    0x1(%rbx),%eax
  mov    %eax,-0x94(%rbp)
  mov    $0x0,%ecx
  mov    $0x0,%edx
  mov    $0x7fff,%esi
  mov    $0x0,%edi
  call   <make@plt>
  movslq %ebx,%rax
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fstpt  (%rax)
  mov    -0x94(%rbp),%ebx
  lea    0x1(%rbx),%eax
  mov    %eax,-0x94(%rbp)
  mov    $0x0,%ecx
  mov    $0x0,%edx
  mov    $0x7fff,%esi
  mov    $0x1,%edi
  call   <make@plt>
  movslq %ebx,%rax
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fstpt  (%rax)
  mov    -0x94(%rbp),%ebx
  lea    0x1(%rbx),%eax
  mov    %eax,-0x94(%rbp)
  mov    $0x0,%ecx
  mov    $0x0,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <make@plt>
  movslq %ebx,%rax
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fstpt  (%rax)
  mov    -0x94(%rbp),%ebx
  lea    0x1(%rbx),%eax
  mov    %eax,-0x94(%rbp)
  mov    $0x0,%ecx
  mov    $0x0,%edx
  mov    $0x0,%esi
  mov    $0x1,%edi
  call   <make@plt>
  movslq %ebx,%rax
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fstpt  (%rax)
  cmpl   $0x6,-0x94(%rbp)
  je     L7
  mov    $0xca,%edx
  lea    D30(%rip),%rax
  mov    %rax,%rsi
  lea    D10(%rip),%rax
  mov    %rax,%rdi
  call   <check_fail@plt>
L7:
  movl   $0x0,-0xa0(%rbp)
  jmp    L18
L36:
  movl   $0x0,-0x9c(%rbp)
  jmp    L82
L38:
  mov    -0x9c(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  mov    -0xa0(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  fxch   %st(1)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  call   <fadd@plt>
  add    $0x20,%rsp
  mov    -0x9c(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  mov    -0xa0(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  fxch   %st(1)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  call   <fsub@plt>
  add    $0x20,%rsp
  mov    -0x9c(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  mov    -0xa0(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  fxch   %st(1)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  call   <fmul@plt>
  add    $0x20,%rsp
  mov    -0x9c(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  mov    -0xa0(%rbp),%eax
  cltq
  shl    $0x4,%rax
  lea    -0x10(%rax),%rax
  add    %rbp,%rax
  add    $0xffffffffffffff80,%rax
  fldt   (%rax)
  fxch   %st(1)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  lea    -0x10(%rsp),%rsp
  fstpt  (%rsp)
  call   <fdiv@plt>
  add    $0x20,%rsp
  addl   $0x1,-0x9c(%rbp)
L82:
  mov    -0x9c(%rbp),%eax
  cmp    -0x94(%rbp),%eax
  jl     L38
  addl   $0x1,-0xa0(%rbp)
L18:
  mov    -0xa0(%rbp),%eax
  cmp    -0x94(%rbp),%eax
  jl     L36
  nop
  mov    -0x18(%rbp),%rax
  sub    %fs:0x28,%rax
  je     L2
  call   <__stack_chk_fail@plt>
L2:
  mov    -0x8(%rbp),%rbx
  leave
  ret
```

tool_calls: name: unpack_data
arguments: data_tag: D30
type_infered: string
name: unpack_data
arguments: data_tag: D10
type_infered: string

tool: D30: /scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/2022-01-22/02-19-57/repos/alfonsokim/tinycc/refs/heads/dev/lib/testfp.c

tool: D10: n == sizeof(x) / sizeof(*x)

assistant: ```c
void nanz(void) {
  {
    long double x[7];
    int i, j, n = 0;
    x[n++] = make(0, 32000, 0x95132b76effc, 0xd79035214b4f8d53);
    x[n++] = make(1, 32001, 0xbe71d7a51587, 0x30601c6815d6c3ac);
    x[n++] = make(0, 32767, 0, 1);
    x[n++] = make(0, 32767, (uint64_t)1 << 46, 0);
    x[n++] = make(1, 32767, (uint64_t)1 << 47, 0);
    x[n++] = make(1, 32767, 0x7596c7099ad5, 0xe25fed2c58f73fc9);
    x[n++] = make(0, 32767, 0x835d143360f9, 0x5e315efb35630666);
    ((n == sizeof(x) / sizeof(*x)) ? (void)0 : check_fail("n == sizeof(x) / sizeof(*x)", "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/2022-01-22/02-19-57/repos/alfonsokim/tinycc/refs/heads/dev/lib/testfp.c", 181));
    for (i = 0; i < n; i++) {
      for (j = 0; j < n; j++) {
        fadd(x[i], x[j]);
        fsub(x[i], x[j]);
        fmul(x[i], x[j]);
        fdiv(x[i], x[j]);
      }
    }
  }
  {
    long double x[6];
    int i, j, n = 0;
    x[n++] = make(1, 32000, 0x62acda85f700, 0x47b6c9f35edc4044);
    x[n++] = make(0, 32001, 0x94b7abf55af7, 0x9f425fe354428e19);
    x[n++] = make(0, 32767, 0, 0);
    x[n++] = make(1, 32767, 0, 0);
    x[n++] = make(0, 0, 0, 0);
    x[n++] = make(1, 0, 0, 0);
    ((n == sizeof(x) / sizeof(*x)) ? (void)0 : check_fail("n == sizeof(x) / sizeof(*x)", "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/2022-01-22/02-19-57/repos/alfonsokim/tinycc/refs/heads/dev/lib/testfp.c", 202));
    for (i = 0; i < n; i++) {
      for (j = 0; j < n; j++) {
        fadd(x[i], x[j]);
        fsub(x[i], x[j]);
        fmul(x[i], x[j]);
        fdiv(x[i], x[j]);
      }
    }
  }
}
```