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

```asm
<display_server_help>:
  endbr64
  sub    $0x8,%rsp
  mov    %rdi,%rsi
  lea    D66(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0xa,%edi
  call   <putchar@plt>
  lea    D145(%rip),%rsi
  lea    D59(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    D51(%rip),%rdi
  call   <puts@plt>
  lea    D146(%rip),%rdi
  call   <puts@plt>
  lea    D26(%rip),%rdi
  call   <puts@plt>
  lea    D129(%rip),%rdi
  call   <puts@plt>
  lea    D47(%rip),%rdi
  call   <atoi@plt>
  lea    D52(%rip),%rdi
  mov    %eax,%esi
  xor    %eax,%eax
  call   <printf@plt>
  lea    D98(%rip),%rdi
  call   <puts@plt>
  lea    D101(%rip),%rdi
  call   <puts@plt>
  lea    D103(%rip),%rdi
  call   <puts@plt>
  lea    D35(%rip),%rdi
  call   <puts@plt>
  lea    D140(%rip),%rdi
  call   <puts@plt>
  lea    D33(%rip),%rdi
  call   <puts@plt>
  mov    $0xa,%edi
  add    $0x8,%rsp
  jmp    1080 <putchar@plt>
```

tool_calls: name: read_data
arguments: data_label: D66
type_infered: string
name: read_data
arguments: data_label: D145
type_infered: string
name: read_data
arguments: data_label: D59
type_infered: string
name: read_data
arguments: data_label: D51
type_infered: string
name: read_data
arguments: data_label: D146
type_infered: string
name: read_data
arguments: data_label: D26
type_infered: string
name: read_data
arguments: data_label: D129
type_infered: string
name: read_data
arguments: data_label: D47
type_infered: string
name: read_data
arguments: data_label: D52
type_infered: string
name: read_data
arguments: data_label: D98
type_infered: string
name: read_data
arguments: data_label: D101
type_infered: string
name: read_data
arguments: data_label: D103
type_infered: string
name: read_data
arguments: data_label: D35
type_infered: string
name: read_data
arguments: data_label: D140
type_infered: string
name: read_data
arguments: data_label: D33
type_infered: string

tool: D66: Usage: %s [OPTIONS]


tool: D145: SYSCONFDIR/conman.conf

tool: D59:   -c FILE   Specify configuration. [%s]


tool: D51:   -F        Run daemon in foreground.

tool: D146:   -h        Display this help.

tool: D26:   -k        Kill daemon.

tool: D129:   -L        Display license information.

tool: D47: 7890

tool: D52:   -p PORT   Specify port number. [%d]


tool: D98:   -P FILE   Specify PID file.

tool: D101:   -q        Query daemon's pid.

tool: D103:   -r        Re-open log files.

tool: D35:   -v        Be verbose.

tool: D140:   -V        Display version information.

tool: D33:   -z        Zero log files.

assistant: ```c
void display_server_help(char *prog) {
  printf("Usage: %s [OPTIONS]\n", prog);
  printf("\n");
  printf("  -c FILE   Specify configuration. [%s]\n", "SYSCONFDIR"
                                                      "/conman.conf");
  printf("  -F        Run daemon in foreground.\n");
  printf("  -h        Display this help.\n");
  printf("  -k        Kill daemon.\n");
  printf("  -L        Display license information.\n");
  printf("  -p PORT   Specify port number. [%d]\n", atoi("7890"));
  printf("  -P FILE   Specify PID file.\n");
  printf("  -q        Query daemon's pid.\n");
  printf("  -r        Re-open log files.\n");
  printf("  -v        Be verbose.\n");
  printf("  -V        Display version information.\n");
  printf("  -z        Zero log files.\n");
  printf("\n");
  return;
}
```