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

```asm
<show_cmds>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  lea    D43(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D57(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D48(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D41(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D1(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D105(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D95(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D51(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D138(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D56(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D17(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D82(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D104(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D169(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D102(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D145(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D132(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  nop
  pop    %rbp
  ret
```

tool_calls: name: read_data
arguments: data_tag: D43
datatype: string
name: read_data
arguments: data_tag: D57
datatype: string
name: read_data
arguments: data_tag: D48
datatype: string
name: read_data
arguments: data_tag: D41
datatype: string
name: read_data
arguments: data_tag: D1
datatype: string
name: read_data
arguments: data_tag: D105
datatype: string
name: read_data
arguments: data_tag: D95
datatype: string
name: read_data
arguments: data_tag: D51
datatype: string
name: read_data
arguments: data_tag: D138
datatype: string
name: read_data
arguments: data_tag: D56
datatype: string
name: read_data
arguments: data_tag: D17
datatype: string
name: read_data
arguments: data_tag: D82
datatype: string
name: read_data
arguments: data_tag: D104
datatype: string
name: read_data
arguments: data_tag: D169
datatype: string
name: read_data
arguments: data_tag: D102
datatype: string
name: read_data
arguments: data_tag: D145
datatype: string
name: read_data
arguments: data_tag: D132
datatype: string

tool: D43: 
Available commands:


tool: D57: ? - help (this)


tool: D48: p - play track


tool: D41: r - play range of tracks


tool: D1: f - play from track to end of disc


tool: D105: P - show currently playing track


tool: D95: w - pause (wait)


tool: D51: W - resume


tool: D138: S - show paused status


tool: D56: s - stop


tool: D17: i - show track info


tool: D82: a - check track is audio


tool: D104: v - set volume


tool: D169: V - get volume


tool: D102: e - eject drive


tool: D145: c - close drive


tool: D132: q - quit



assistant: ```c
void show_cmds(void) {
  printf("\nAvailable commands:\n");
  printf("? - help (this)\n");
  printf("p - play track\n");
  printf("r - play range of tracks\n");
  printf("f - play from track to end of disc\n");
  printf("P - show currently playing track\n");
  printf("w - pause (wait)\n");
  printf("W - resume\n");
  printf("S - show paused status\n");
  printf("s - stop\n");
  printf("i - show track info\n");
  printf("a - check track is audio\n");
  printf("v - set volume\n");
  printf("V - get volume\n");
  printf("e - eject drive\n");
  printf("c - close drive\n");
  printf("q - quit\n\n");
}
```