user: 请将以下的汇编代码转换成C语言代码：

```asm
<plotexample>:
  endbr64
  push   %r12
  push   %rbp
  push   %rbx
  lea    D391(%rip),%rdi
  call   <printf@plt>
  lea    D156(%rip),%rdi
  call   <printf@plt>
  lea    D48(%rip),%rdi
  call   <printf@plt>
  lea    D229(%rip),%rdi
  call   <printf@plt>
  lea    D330(%rip),%rdi
  call   <printf@plt>
  lea    D375(%rip),%rdi
  call   <printf@plt>
  lea    D184(%rip),%rdi
  call   <printf@plt>
  lea    D161(%rip),%rdi
  call   <printf@plt>
  lea    D86(%rip),%rdi
  call   <printf@plt>
  lea    D102(%rip),%rdi
  call   <printf@plt>
  lea    D423(%rip),%rdi
  call   <printf@plt>
  lea    D296(%rip),%rdi
  call   <printf@plt>
  lea    D224(%rip),%rdi
  call   <printf@plt>
  lea    D56(%rip),%rdi
  call   <printf@plt>
  lea    D28(%rip),%rdi
  call   <printf@plt>
  lea    D314(%rip),%rdi
  call   <printf@plt>
  lea    D358(%rip),%rdi
  call   <printf@plt>
  lea    D129(%rip),%rbx
  mov    %rbx,%rdi
  call   <printf@plt>
  lea    D227(%rip),%rdi
  call   <printf@plt>
  lea    D215(%rip),%rdi
  call   <printf@plt>
  lea    D153(%rip),%rdi
  call   <printf@plt>
  lea    D6(%rip),%r12
  mov    %r12,%rdi
  call   <printf@plt>
  lea    D19(%rip),%rbp
  mov    %rbp,%rdi
  call   <printf@plt>
  lea    D257(%rip),%rdi
  call   <printf@plt>
  lea    D3(%rip),%rdi
  call   <printf@plt>
  lea    D264(%rip),%rdi
  call   <printf@plt>
  mov    %rbx,%rdi
  call   <printf@plt>
  lea    D61(%rip),%rdi
  call   <printf@plt>
  lea    D195(%rip),%rdi
  call   <printf@plt>
  lea    D289(%rip),%rdi
  call   <printf@plt>
  lea    D231(%rip),%rdi
  call   <printf@plt>
  lea    D178(%rip),%rdi
  call   <printf@plt>
  lea    D212(%rip),%rdi
  call   <printf@plt>
  lea    D364(%rip),%rdi
  call   <printf@plt>
  lea    D477(%rip),%rdi
  call   <printf@plt>
  mov    %rbx,%rdi
  call   <printf@plt>
  lea    D309(%rip),%rdi
  call   <printf@plt>
  lea    D354(%rip),%rdi
  call   <printf@plt>
  lea    D241(%rip),%rdi
  call   <printf@plt>
  mov    %r12,%rdi
  call   <printf@plt>
  mov    %rbp,%rdi
  call   <printf@plt>
  lea    D98(%rip),%rdi
  call   <printf@plt>
  lea    D285(%rip),%rdi
  call   <printf@plt>
  lea    D185(%rip),%rdi
  call   <printf@plt>
  lea    D79(%rip),%rdi
  call   <printf@plt>
  lea    D262(%rip),%rdi
  call   <printf@plt>
  lea    D403(%rip),%rdi
  call   <printf@plt>
  lea    D68(%rip),%rdi
  call   <printf@plt>
  lea    D381(%rip),%rdi
  call   <printf@plt>
  lea    D62(%rip),%rdi
  call   <printf@plt>
  lea    D104(%rip),%rdi
  call   <printf@plt>
  lea    D91(%rip),%rdi
  call   <printf@plt>
  pop    %rbx
  pop    %rbp
  pop    %r12
  ret
```

tool_calls: name: disassemble_data
arguments: tag: D391
type_guessed: string
name: disassemble_data
arguments: tag: D156
type_guessed: string
name: disassemble_data
arguments: tag: D48
type_guessed: string
name: disassemble_data
arguments: tag: D229
type_guessed: string
name: disassemble_data
arguments: tag: D330
type_guessed: string
name: disassemble_data
arguments: tag: D375
type_guessed: string
name: disassemble_data
arguments: tag: D184
type_guessed: string
name: disassemble_data
arguments: tag: D161
type_guessed: string
name: disassemble_data
arguments: tag: D86
type_guessed: string
name: disassemble_data
arguments: tag: D102
type_guessed: string
name: disassemble_data
arguments: tag: D423
type_guessed: string
name: disassemble_data
arguments: tag: D296
type_guessed: string
name: disassemble_data
arguments: tag: D224
type_guessed: string
name: disassemble_data
arguments: tag: D56
type_guessed: string
name: disassemble_data
arguments: tag: D28
type_guessed: string
name: disassemble_data
arguments: tag: D314
type_guessed: string
name: disassemble_data
arguments: tag: D358
type_guessed: string
name: disassemble_data
arguments: tag: D129
type_guessed: string
name: disassemble_data
arguments: tag: D227
type_guessed: string
name: disassemble_data
arguments: tag: D215
type_guessed: string
name: disassemble_data
arguments: tag: D153
type_guessed: string
name: disassemble_data
arguments: tag: D6
type_guessed: string
name: disassemble_data
arguments: tag: D19
type_guessed: string
name: disassemble_data
arguments: tag: D257
type_guessed: string
name: disassemble_data
arguments: tag: D3
type_guessed: string
name: disassemble_data
arguments: tag: D264
type_guessed: string
name: disassemble_data
arguments: tag: D61
type_guessed: string
name: disassemble_data
arguments: tag: D195
type_guessed: string
name: disassemble_data
arguments: tag: D289
type_guessed: string
name: disassemble_data
arguments: tag: D231
type_guessed: string
name: disassemble_data
arguments: tag: D178
type_guessed: string
name: disassemble_data
arguments: tag: D212
type_guessed: string
name: disassemble_data
arguments: tag: D364
type_guessed: string
name: disassemble_data
arguments: tag: D477
type_guessed: string
name: disassemble_data
arguments: tag: D309
type_guessed: string
name: disassemble_data
arguments: tag: D354
type_guessed: string
name: disassemble_data
arguments: tag: D241
type_guessed: string
name: disassemble_data
arguments: tag: D98
type_guessed: string
name: disassemble_data
arguments: tag: D285
type_guessed: string
name: disassemble_data
arguments: tag: D185
type_guessed: string
name: disassemble_data
arguments: tag: D79
type_guessed: string
name: disassemble_data
arguments: tag: D262
type_guessed: string
name: disassemble_data
arguments: tag: D403
type_guessed: string
name: disassemble_data
arguments: tag: D68
type_guessed: string
name: disassemble_data
arguments: tag: D381
type_guessed: string
name: disassemble_data
arguments: tag: D62
type_guessed: string
name: disassemble_data
arguments: tag: D104
type_guessed: string
name: disassemble_data
arguments: tag: D91
type_guessed: string

tool: D391: 
file_base=example.su


tool: D156: cp0=1200


tool: D48: cs0=600


tool: D229: ro0=1000


tool: D330: sizex=2000


tool: D375: sizez=2500


tool: D184: dx=5


tool: D161: dz=10



tool: D86: gradt=1


tool: D102: writeint=1


tool: D423: verbose=1



tool: D296: intt=def


tool: D224: grad=150


tool: D56: poly=2


tool: D28: cp=1800,2500,1400,2500,3000


tool: D314: cs=1200,1800,1000,1800,1200


tool: D358: ro=1000


tool: D129: x=0,500,1000,1500,2000


tool: D227: z=100,400,150,500,100



tool: D215: intt=sin


tool: D153: var=50,100


tool: D6: grad=0


tool: D19: poly=0


tool: D257: cp=2400


tool: D3: cs=1900


tool: D264: ro=1400


tool: D61: z=800,800,900,1000,900



tool: D195: intt=rough


tool: D289: var=50,1.4,10


tool: D231: grad=50


tool: D178: poly=1


tool: D212: cp=3000,3300


tool: D364: cs=2200,2300


tool: D477: ro=1800


tool: D309: z=1400,1800,1800,1300,1500



tool: D354: intt=fract


tool: D241: var=60,30,1.6,1,1.8,10


tool: D98: cp=3800


tool: D285: cs=2600


tool: D185: ro=2100


tool: D79: x=0,2000


tool: D262: z=2100,2100



tool: D403: intt=diffr


tool: D68: cp=100


tool: D381: cs=100


tool: D62: ro=100


tool: D104: x=500,1500


tool: D91: z=1300,1800



assistant: ```c
void plotexample() {
  printf("\nfile_base=example.su\n");
  printf("cp0=1200\n");
  printf("cs0=600\n");
  printf("ro0=1000\n");
  printf("sizex=2000\n");
  printf("sizez=2500\n");
  printf("dx=5\n");
  printf("dz=10\n\n");
  printf("gradt=1\n");
  printf("writeint=1\n");
  printf("verbose=1\n\n");
  printf("intt=def\n");
  printf("grad=150\n");
  printf("poly=2\n");
  printf("cp=1800,2500,1400,2500,3000\n");
  printf("cs=1200,1800,1000,1800,1200\n");
  printf("ro=1000\n");
  printf("x=0,500,1000,1500,2000\n");
  printf("z=100,400,150,500,100\n\n");
  printf("intt=sin\n");
  printf("var=50,100\n");
  printf("grad=0\n");
  printf("poly=0\n");
  printf("cp=2400\n");
  printf("cs=1900\n");
  printf("ro=1400\n");
  printf("x=0,500,1000,1500,2000\n");
  printf("z=800,800,900,1000,900\n\n");
  printf("intt=rough\n");
  printf("var=50,1.4,10\n");
  printf("grad=50\n");
  printf("poly=1\n");
  printf("cp=3000,3300\n");
  printf("cs=2200,2300\n");
  printf("ro=1800\n");
  printf("x=0,500,1000,1500,2000\n");
  printf("z=1400,1800,1800,1300,1500\n\n");
  printf("intt=fract\n");
  printf("var=60,30,1.6,1,1.8,10\n");
  printf("grad=0\n");
  printf("poly=0\n");
  printf("cp=3800\n");
  printf("cs=2600\n");
  printf("ro=2100\n");
  printf("x=0,2000\n");
  printf("z=2100,2100\n\n");
  printf("intt=diffr\n");
  printf("cp=100\n");
  printf("cs=100\n");
  printf("ro=100\n");
  printf("x=500,1500\n");
  printf("z=1300,1800\n\n");
  return;
}
```