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

```asm
<scarymonsters7>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  movsd  D318(%rip),%xmm0
  mov    D539(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D806(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D806(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D740(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D740(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D551(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D551(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D551(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D277(%rip),%xmm0
  mov    D551(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0x736,%edi
  call   <delay@plt>
  mov    $0x28,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D539(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D740(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D740(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D465(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D465(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D740(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D740(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D740(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  mov    $0x28,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D539(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D806(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D806(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D740(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D740(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D551(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D551(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D551(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D551(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D357(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D357(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D740(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D787(%rip),%xmm0
  mov    D740(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0x1cd,%edi
  call   <delay@plt>
  mov    $0x28,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  movapd %xmm0,%xmm1
  mov    D282(%rip),%rax
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  mov    $0x28,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D357(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  mov    $0x28,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D465(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D801(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D801(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D465(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D465(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D465(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  mov    $0x28,%edi
  call   <delay@plt>
  movsd  D787(%rip),%xmm0
  mov    D666(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0x1cd,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D666(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D318(%rip),%xmm0
  mov    D740(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0xe6,%edi
  call   <delay@plt>
  movsd  D553(%rip),%xmm0
  mov    D740(%rip),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <tone@plt>
  mov    $0x568,%edi
  call   <delay@plt>
  mov    $0x28,%edi
  call   <delay@plt>
  nop
  pop    %rbp
  ret
```

tool_calls: name: retrieve_data
arguments: data_label: D318
datatype: f64
name: retrieve_data
arguments: data_label: D539
datatype: f64
name: retrieve_data
arguments: data_label: D806
datatype: f64
name: retrieve_data
arguments: data_label: D740
datatype: f64
name: retrieve_data
arguments: data_label: D551
datatype: f64
name: retrieve_data
arguments: data_label: D277
datatype: f64
name: retrieve_data
arguments: data_label: D465
datatype: f64
name: retrieve_data
arguments: data_label: D357
datatype: f64
name: retrieve_data
arguments: data_label: D787
datatype: f64
name: retrieve_data
arguments: data_label: D282
datatype: byte[8]
name: retrieve_data
arguments: data_label: D801
datatype: f64
name: retrieve_data
arguments: data_label: D666
datatype: f64
name: retrieve_data
arguments: data_label: D553
datatype: f64

tool: D318: 230.769

tool: D539: 392

tool: D806: 440

tool: D740: 493.88

tool: D551: 349.23

tool: D277: 1846.154

tool: D465: 293.66

tool: D357: 523.25

tool: D787: 461.538

tool: {"D282": [0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]}

tool: D801: 261.63

tool: D666: 698.46

tool: D553: 1384.614

assistant: ```c
void scarymonsters7() {
  tone(5, 392.00, 230.769);
  delay(230.769);
  tone(5, 440.00, 230.769);
  delay(230.769);
  tone(5, 440.00, 230.769);
  delay(230.769);
  tone(5, 493.88, 230.769);
  delay(230.769);
  tone(5, 493.88, 230.769);
  delay(230.769);
  tone(5, 349.23, 230.769);
  delay(230.769);
  tone(5, 349.23, 230.769);
  delay(230.769);
  tone(5, 349.23, 230.769);
  delay(230.769);
  tone(5, 349.23, 1846.154);
  delay(1846.154);
  delay(40);
  tone(5, 392.00, 230.769);
  delay(230.769);
  tone(5, 493.88, 230.769);
  delay(230.769);
  tone(5, 493.88, 230.769);
  delay(230.769);
  tone(5, 293.66, 230.769);
  delay(230.769);
  tone(5, 293.66, 230.769);
  delay(230.769);
  tone(5, 493.88, 230.769);
  delay(230.769);
  tone(5, 493.88, 230.769);
  delay(230.769);
  tone(5, 493.88, 230.769);
  delay(230.769);
  delay(40);
  tone(5, 392.00, 230.769);
  delay(230.769);
  tone(5, 440.00, 230.769);
  delay(230.769);
  tone(5, 440.00, 230.769);
  delay(230.769);
  tone(5, 493.88, 230.769);
  delay(230.769);
  tone(5, 493.88, 230.769);
  delay(230.769);
  tone(5, 349.23, 230.769);
  delay(230.769);
  tone(5, 349.23, 230.769);
  delay(230.769);
  tone(5, 349.23, 230.769);
  delay(230.769);
  tone(5, 349.23, 230.769);
  delay(230.769);
  tone(5, 523.25, 230.769);
  delay(230.769);
  tone(5, 523.25, 230.769);
  delay(230.769);
  tone(5, 493.88, 230.769);
  delay(230.769);
  tone(5, 493.88, 461.538);
  delay(461.538);
  delay(40);
  tone(5, 00, 230.769);
  delay(230.769);
  delay(40);
  tone(5, 523.25, 230.769);
  delay(230.769);
  delay(40);
  tone(5, 293.66, 230.769);
  delay(230.769);
  tone(5, 261.63, 230.769);
  delay(230.769);
  tone(5, 261.63, 230.769);
  delay(230.769);
  tone(5, 293.66, 230.769);
  delay(230.769);
  tone(5, 293.66, 230.769);
  delay(230.769);
  tone(5, 293.66, 230.769);
  delay(230.769);
  delay(40);
  tone(5, 698.46, 461.538);
  delay(461.538);
  tone(5, 698.46, 230.769);
  delay(230.769);
  tone(5, 493.88, 230.769);
  delay(230.769);
  tone(5, 493.88, 1384.614);
  delay(1384.614);
  delay(40);
}
```