user: 请从给定的汇编指令推导出C源代码:

```asm
<main>:
  endbr64
  push   %rbp
  movsd  D196(%rip),%xmm0
  lea    D82(%rip),%rdi
  lea    D98(%rip),%rbp
  call   <printf@plt>
  movsd  D67(%rip),%xmm1
  mov    %rbp,%rdi
  movapd %xmm1,%xmm0
  call   <printf@plt>
  movsd  D84(%rip),%xmm0
  lea    D169(%rip),%rdi
  call   <printf@plt>
  movsd  D49(%rip),%xmm0
  lea    D64(%rip),%rdi
  call   <printf@plt>
  pxor   %xmm0,%xmm0
  lea    D116(%rip),%rdi
  call   <printf@plt>
  movsd  D174(%rip),%xmm0
  lea    D88(%rip),%rdi
  call   <printf@plt>
  movsd  D75(%rip),%xmm0
  lea    D29(%rip),%rdi
  call   <printf@plt>
  mov    D67(%rip),%rax
  mov    %rbp,%rdi
  movq   %rax,%xmm0
  call   <printf@plt>
  movsd  D155(%rip),%xmm0
  lea    D97(%rip),%rdi
  call   <printf@plt>
  movsd  D56(%rip),%xmm0
  lea    D110(%rip),%rdi
  call   <printf@plt>
  movsd  D13(%rip),%xmm0
  lea    D173(%rip),%rdi
  call   <printf@plt>
  movsd  D206(%rip),%xmm0
  lea    D35(%rip),%rdi
  call   <printf@plt>
  xor    %eax,%eax
  pop    %rbp
  ret
```

tool_calls: name: extract_symbolic_data
arguments: label: D196
type: byte[8]
name: extract_symbolic_data
arguments: label: D82
type: string
name: extract_symbolic_data
arguments: label: D98
type: string
name: extract_symbolic_data
arguments: label: D67
type: byte[8]
name: extract_symbolic_data
arguments: label: D84
type: byte[8]
name: extract_symbolic_data
arguments: label: D169
type: string
name: extract_symbolic_data
arguments: label: D49
type: byte[8]
name: extract_symbolic_data
arguments: label: D64
type: string
name: extract_symbolic_data
arguments: label: D116
type: string
name: extract_symbolic_data
arguments: label: D174
type: byte[8]
name: extract_symbolic_data
arguments: label: D88
type: string
name: extract_symbolic_data
arguments: label: D75
type: f64
name: extract_symbolic_data
arguments: label: D29
type: string
name: extract_symbolic_data
arguments: label: D155
type: byte[8]
name: extract_symbolic_data
arguments: label: D97
type: string
name: extract_symbolic_data
arguments: label: D56
type: byte[8]
name: extract_symbolic_data
arguments: label: D110
type: string
name: extract_symbolic_data
arguments: label: D13
type: byte[8]
name: extract_symbolic_data
arguments: label: D173
type: string
name: extract_symbolic_data
arguments: label: D206
type: byte[8]
name: extract_symbolic_data
arguments: label: D35
type: string

tool: {"D196": [0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x40]}

tool: D82: a=%d


tool: D98: b=%d


tool: {"D67": [0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x40]}

tool: {"D84": [0x00,0x00,0x00,0x00,0x00,0x00,0x22,0x40]}

tool: D169: a+b=%d


tool: {"D49": [0x00,0x00,0x00,0x00,0x00,0x00,0x08,0xc0]}

tool: D64: a-b=%d


tool: D116: a/b=%d


tool: {"D174": [0x00,0x00,0x00,0x00,0x00,0x00,0x32,0x40]}

tool: D88: a*b=%d


tool: D75: 1.2

tool: D29: c=%lf


tool: {"D155": [0xcd,0xcc,0xcc,0xcc,0xcc,0xcc,0x1c,0x40]}

tool: D97: c+b=%lf


tool: {"D56": [0x33,0x33,0x33,0x33,0x33,0x33,0x13,0xc0]}

tool: D110: c-b=%lf


tool: {"D13": [0x99,0x99,0x99,0x99,0x99,0x99,0xc9,0x3f]}

tool: D173: c/b=%lf


tool: {"D206": [0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0x1c,0x40]}

tool: D35: c*b=%lf


assistant: ```c
int main() {
  int a;
  int b;
  double c;
  a = 3;
  b = 6;
  c = 1.2;
  printf("a=%d\n", a);
  printf("b=%d\n", b);
  printf("a+b=%d\n", a + b);
  printf("a-b=%d\n", a - b);
  printf("a/b=%d\n", a / b);
  printf("a*b=%d\n", a * b);
  printf("c=%lf\n", c);
  printf("b=%d\n", b);
  printf("c+b=%lf\n", c + b);
  printf("c-b=%lf\n", c - b);
  printf("c/b=%lf\n", c / b);
  printf("c*b=%lf\n", c * b);
  return 0;
  return 0;
}
```