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

```asm
<showhelp>:
  endbr64
  sub    $0x8,%rsp
  lea    D137(%rip),%rsi
  lea    D75(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    D116(%rip),%rdi
  call   <puts@plt>
  lea    D4(%rip),%rdi
  call   <puts@plt>
  lea    D124(%rip),%rdi
  call   <puts@plt>
  lea    D40(%rip),%rdi
  call   <puts@plt>
  lea    D28(%rip),%rdi
  call   <puts@plt>
  lea    D83(%rip),%rdi
  call   <puts@plt>
  lea    D24(%rip),%rdi
  call   <puts@plt>
  lea    D39(%rip),%rdi
  call   <puts@plt>
  lea    D67(%rip),%rdi
  call   <puts@plt>
  lea    D68(%rip),%rdi
  call   <puts@plt>
  lea    D70(%rip),%rdi
  call   <puts@plt>
  lea    D21(%rip),%rdi
  add    $0x8,%rsp
  jmp    1060 <puts@plt>
```

tool_calls: name: extract_symbolic_data
arguments: tag: D137
datatype: string
name: extract_symbolic_data
arguments: tag: D75
datatype: string
name: extract_symbolic_data
arguments: tag: D116
datatype: string
name: extract_symbolic_data
arguments: tag: D4
datatype: string
name: extract_symbolic_data
arguments: tag: D124
datatype: string
name: extract_symbolic_data
arguments: tag: D40
datatype: string
name: extract_symbolic_data
arguments: tag: D28
datatype: string
name: extract_symbolic_data
arguments: tag: D83
datatype: string
name: extract_symbolic_data
arguments: tag: D24
datatype: string
name: extract_symbolic_data
arguments: tag: D39
datatype: string
name: extract_symbolic_data
arguments: tag: D67
datatype: string
name: extract_symbolic_data
arguments: tag: D68
datatype: string
name: extract_symbolic_data
arguments: tag: D70
datatype: string
name: extract_symbolic_data
arguments: tag: D21
datatype: string

tool: D137: 1.13 beta

tool: D75:  vnStat daemon %s by Teemu Toivola <tst at iki dot fi>



tool: D116:          -d, --daemon         fork process to background

tool: D4:          -n, --nodaemon       stay in foreground attached to the terminal


tool: D124:          -s, --sync           sync interface counters on first update

tool: D40:          -D, --debug          show additional debug and disable daemon

tool: D28:          -?, --help           show this help

tool: D83:          -v, --version        show version

tool: D24:          -p, --pidfile        select used pid file

tool: D39:          -u, --user           set daemon process user

tool: D67:          -g, --group          set daemon process group

tool: D68:          --config             select used config file

tool: D70:          --noadd              don't add found interfaces if no dbs are found


tool: D21: See also "man vnstatd".

assistant: ```c
void showhelp(void) {
  printf(" vnStat daemon %s by Teemu Toivola <tst at iki dot fi>\n\n", "1.13 beta");
  printf("         -d, --daemon         fork process to background\n");
  printf("         -n, --nodaemon       stay in foreground attached to the terminal\n\n");
  printf("         -s, --sync           sync interface counters on first update\n");
  printf("         -D, --debug          show additional debug and disable daemon\n");
  printf("         -?, --help           show this help\n");
  printf("         -v, --version        show version\n");
  printf("         -p, --pidfile        select used pid file\n");
  printf("         -u, --user           set daemon process user\n");
  printf("         -g, --group          set daemon process group\n");
  printf("         --config             select used config file\n");
  printf("         --noadd              don't add found interfaces if no dbs are found\n\n");
  printf("See also \"man vnstatd\".\n");
}
```