user: 请显示与下面列出的汇编代码相匹配的C语言实现：

```asm
<main>:
  endbr64
  sub    $0x8,%rsp
  xor    %edi,%edi
  pxor   %xmm0,%xmm0
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  je     L279
L266:
  mov    $0x1,%eax
L151:
  add    $0x8,%rsp
  ret
L279:
  movsd  D386(%rip),%xmm0
  mov    $0x1,%edi
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  movsd  D149(%rip),%xmm0
  mov    $0x2,%edi
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  movsd  D296(%rip),%xmm0
  mov    $0x14,%edi
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    $0xffffff,%edi
  movsd  D164(%rip),%xmm0
  mov    $0x1,%eax
  shl    $0x27,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  movsd  D95(%rip),%xmm0
  mov    $0x1,%eax
  movabs $0x7ffffffffffff800,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    $0x7fffff,%edi
  movsd  D191(%rip),%xmm0
  mov    $0x1,%eax
  shl    $0x28,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  movsd  D188(%rip),%xmm0
  mov    $0x1,%eax
  movabs $0x7ffffffffffff000,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    $0x1000001,%edi
  movsd  D97(%rip),%xmm0
  mov    $0x1,%eax
  shl    $0x27,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  movsd  D108(%rip),%xmm0
  mov    $0x1,%eax
  movabs $0x8000000000000800,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    $0x800001,%edi
  movsd  D384(%rip),%xmm0
  mov    $0x1,%eax
  shl    $0x28,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  movsd  D148(%rip),%xmm0
  mov    $0x1,%eax
  movabs $0x8000000000001000,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    $0x1,%edi
  movsd  D287(%rip),%xmm0
  mov    $0x1,%eax
  shl    $0x3f,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    D287(%rip),%rax
  movabs $0x8000000000000001,%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    $0xff6e5d,%edi
  movsd  D309(%rip),%xmm0
  mov    $0x1,%eax
  shl    $0x1b,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    $0x3fdb975,%edi
  movsd  D61(%rip),%xmm0
  mov    $0x1,%eax
  shl    $0x19,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    $0x7fb72eb,%edi
  movsd  D366(%rip),%xmm0
  mov    $0x1,%eax
  shl    $0x18,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  movsd  D209(%rip),%xmm0
  mov    $0x1,%eax
  movabs $0x7fb72ebffffff,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    $0x1fedcbb,%edi
  movsd  D371(%rip),%xmm0
  mov    $0x1,%eax
  shl    $0x1a,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  movsd  D121(%rip),%xmm0
  mov    $0x1,%eax
  movabs $0x7fb72e8000001,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    $0x3fdb973,%edi
  movsd  D267(%rip),%xmm0
  mov    $0x1,%eax
  shl    $0x19,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    $0x7fb72e7,%edi
  movsd  D122(%rip),%xmm0
  mov    $0x1,%eax
  shl    $0x18,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  movsd  D337(%rip),%xmm0
  mov    $0x1,%eax
  movabs $0x7fb72e7ffffff,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  movsd  D181(%rip),%xmm0
  mov    $0x1,%eax
  movabs $0x7fb72e4000001,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    $0x1fedcb9,%edi
  movsd  D130(%rip),%xmm0
  mov    $0x1,%eax
  shl    $0x1a,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    D229(%rip),%rax
  movabs $0x23479fd0e092dc0,%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  movsd  D0(%rip),%xmm0
  mov    $0x1,%eax
  movabs $0x23479fd0e092da1,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    D229(%rip),%rax
  movabs $0x23479fd0e092db0,%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    D229(%rip),%rax
  movabs $0x23479fd0e092db8,%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    D229(%rip),%rax
  movabs $0x23479fd0e092db6,%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    D229(%rip),%rax
  movabs $0x23479fd0e092dbf,%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    D229(%rip),%rax
  movabs $0x23479fd0e092dc1,%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    D229(%rip),%rax
  movabs $0x23479fd0e092dc7,%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    D229(%rip),%rax
  movabs $0x23479fd0e092dc8,%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    D229(%rip),%rax
  movabs $0x23479fd0e092dcf,%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    D229(%rip),%rax
  movabs $0x23479fd0e092dd0,%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  movsd  D60(%rip),%xmm0
  mov    $0x1,%eax
  movabs $0x23479fd0e092dd1,%rdi
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    D60(%rip),%rax
  movabs $0x23479fd0e092dd8,%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    D60(%rip),%rax
  movabs $0x23479fd0e092ddf,%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  jne    L266
  mov    D60(%rip),%rax
  movabs $0x23479fd0e092de0,%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <test__floatundidf@plt>
  test   %eax,%eax
  setne  %al
  movzbl %al,%eax
  jmp    L151
```

tool_calls: name: extract_symbolic_data
arguments: tag: D386
type_infered: f64
name: extract_symbolic_data
arguments: tag: D149
type_infered: f64
name: extract_symbolic_data
arguments: tag: D296
type_infered: f64
name: extract_symbolic_data
arguments: tag: D164
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D95
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D191
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D188
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D97
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D108
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D384
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D148
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D287
type_infered: f32[2]
name: extract_symbolic_data
arguments: tag: D309
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D61
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D366
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D209
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D371
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D121
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D267
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D122
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D337
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D181
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D130
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D229
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D0
type_infered: byte[8]
name: extract_symbolic_data
arguments: tag: D60
type_infered: byte[8]

tool: D386: 1

tool: D149: 2

tool: D296: 20

tool: {"D164": [0x00,0x00,0x00,0xe0,0xff,0xff,0xdf,0x43]}

tool: {"D95": [0xfe,0xff,0xff,0xff,0xff,0xff,0xdf,0x43]}

tool: {"D191": [0x00,0x00,0x00,0xc0,0xff,0xff,0xdf,0x43]}

tool: {"D188": [0xfc,0xff,0xff,0xff,0xff,0xff,0xdf,0x43]}

tool: {"D97": [0x00,0x00,0x00,0x10,0x00,0x00,0xe0,0x43]}

tool: {"D108": [0x01,0x00,0x00,0x00,0x00,0x00,0xe0,0x43]}

tool: {"D384": [0x00,0x00,0x00,0x20,0x00,0x00,0xe0,0x43]}

tool: {"D148": [0x02,0x00,0x00,0x00,0x00,0x00,0xe0,0x43]}

tool: {"D287": [0.0,448.0]}

tool: {"D309": [0x00,0x00,0x00,0xa0,0xcb,0xed,0x1f,0x43]}

tool: {"D61": [0x00,0x00,0x00,0xa8,0xcb,0xed,0x1f,0x43]}

tool: {"D366": [0x00,0x00,0x00,0xac,0xcb,0xed,0x1f,0x43]}

tool: {"D209": [0xfc,0xff,0xff,0xaf,0xcb,0xed,0x1f,0x43]}

tool: {"D371": [0x00,0x00,0x00,0xb0,0xcb,0xed,0x1f,0x43]}

tool: {"D121": [0x04,0x00,0x00,0xa0,0xcb,0xed,0x1f,0x43]}

tool: {"D267": [0x00,0x00,0x00,0x98,0xcb,0xed,0x1f,0x43]}

tool: {"D122": [0x00,0x00,0x00,0x9c,0xcb,0xed,0x1f,0x43]}

tool: {"D337": [0xfc,0xff,0xff,0x9f,0xcb,0xed,0x1f,0x43]}

tool: {"D181": [0x04,0x00,0x00,0x90,0xcb,0xed,0x1f,0x43]}

tool: {"D130": [0x00,0x00,0x00,0x90,0xcb,0xed,0x1f,0x43]}

tool: {"D229": [0x6e,0x49,0x70,0xe8,0xcf,0xa3,0x81,0x43]}

tool: {"D0": [0x6d,0x49,0x70,0xe8,0xcf,0xa3,0x81,0x43]}

tool: {"D60": [0x6f,0x49,0x70,0xe8,0xcf,0xa3,0x81,0x43]}

assistant: ```c
int main() {
  if (test__floatundidf(0, 0.0))
    return 1;
  if (test__floatundidf(1, 1.0))
    return 1;
  if (test__floatundidf(2, 2.0))
    return 1;
  if (test__floatundidf(20, 20.0))
    return 1;
  if (test__floatundidf(0x7FFFFF8000000000LL, 0x1.FFFFFEp+62))
    return 1;
  if (test__floatundidf(0x7FFFFFFFFFFFF800LL, 0x1.FFFFFFFFFFFFEp+62))
    return 1;
  if (test__floatundidf(0x7FFFFF0000000000LL, 0x1.FFFFFCp+62))
    return 1;
  if (test__floatundidf(0x7FFFFFFFFFFFF000LL, 0x1.FFFFFFFFFFFFCp+62))
    return 1;
  if (test__floatundidf(0x8000008000000000LL, 0x1.000001p+63))
    return 1;
  if (test__floatundidf(0x8000000000000800LL, 0x1.0000000000001p+63))
    return 1;
  if (test__floatundidf(0x8000010000000000LL, 0x1.000002p+63))
    return 1;
  if (test__floatundidf(0x8000000000001000LL, 0x1.0000000000002p+63))
    return 1;
  if (test__floatundidf(0x8000000000000000LL, 0x1p+63))
    return 1;
  if (test__floatundidf(0x8000000000000001LL, 0x1p+63))
    return 1;
  if (test__floatundidf(0x0007FB72E8000000LL, 0x1.FEDCBAp+50))
    return 1;
  if (test__floatundidf(0x0007FB72EA000000LL, 0x1.FEDCBA8p+50))
    return 1;
  if (test__floatundidf(0x0007FB72EB000000LL, 0x1.FEDCBACp+50))
    return 1;
  if (test__floatundidf(0x0007FB72EBFFFFFFLL, 0x1.FEDCBAFFFFFFCp+50))
    return 1;
  if (test__floatundidf(0x0007FB72EC000000LL, 0x1.FEDCBBp+50))
    return 1;
  if (test__floatundidf(0x0007FB72E8000001LL, 0x1.FEDCBA0000004p+50))
    return 1;
  if (test__floatundidf(0x0007FB72E6000000LL, 0x1.FEDCB98p+50))
    return 1;
  if (test__floatundidf(0x0007FB72E7000000LL, 0x1.FEDCB9Cp+50))
    return 1;
  if (test__floatundidf(0x0007FB72E7FFFFFFLL, 0x1.FEDCB9FFFFFFCp+50))
    return 1;
  if (test__floatundidf(0x0007FB72E4000001LL, 0x1.FEDCB90000004p+50))
    return 1;
  if (test__floatundidf(0x0007FB72E4000000LL, 0x1.FEDCB9p+50))
    return 1;
  if (test__floatundidf(0x023479FD0E092DC0LL, 0x1.1A3CFE870496Ep+57))
    return 1;
  if (test__floatundidf(0x023479FD0E092DA1LL, 0x1.1A3CFE870496Dp+57))
    return 1;
  if (test__floatundidf(0x023479FD0E092DB0LL, 0x1.1A3CFE870496Ep+57))
    return 1;
  if (test__floatundidf(0x023479FD0E092DB8LL, 0x1.1A3CFE870496Ep+57))
    return 1;
  if (test__floatundidf(0x023479FD0E092DB6LL, 0x1.1A3CFE870496Ep+57))
    return 1;
  if (test__floatundidf(0x023479FD0E092DBFLL, 0x1.1A3CFE870496Ep+57))
    return 1;
  if (test__floatundidf(0x023479FD0E092DC1LL, 0x1.1A3CFE870496Ep+57))
    return 1;
  if (test__floatundidf(0x023479FD0E092DC7LL, 0x1.1A3CFE870496Ep+57))
    return 1;
  if (test__floatundidf(0x023479FD0E092DC8LL, 0x1.1A3CFE870496Ep+57))
    return 1;
  if (test__floatundidf(0x023479FD0E092DCFLL, 0x1.1A3CFE870496Ep+57))
    return 1;
  if (test__floatundidf(0x023479FD0E092DD0LL, 0x1.1A3CFE870496Ep+57))
    return 1;
  if (test__floatundidf(0x023479FD0E092DD1LL, 0x1.1A3CFE870496Fp+57))
    return 1;
  if (test__floatundidf(0x023479FD0E092DD8LL, 0x1.1A3CFE870496Fp+57))
    return 1;
  if (test__floatundidf(0x023479FD0E092DDFLL, 0x1.1A3CFE870496Fp+57))
    return 1;
  if (test__floatundidf(0x023479FD0E092DE0LL, 0x1.1A3CFE870496Fp+57))
    return 1;
  return 0;
}
```