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

```asm
<mog_showhelp>:
  endbr64
  push   %rbp
  mov    %rdi,%rbp
  lea    D3(%rip),%rdi
  call   <puts@plt>
  mov    %rbp,%rsi
  lea    D90(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    %rbp,%rsi
  lea    D13(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    D117(%rip),%rdi
  call   <puts@plt>
  lea    D22(%rip),%rdi
  call   <puts@plt>
  lea    D102(%rip),%rdi
  call   <puts@plt>
  lea    D5(%rip),%rdi
  call   <puts@plt>
  lea    D25(%rip),%rdi
  call   <puts@plt>
  lea    D114(%rip),%rdi
  call   <puts@plt>
  lea    D38(%rip),%rdi
  call   <puts@plt>
  lea    D119(%rip),%rdi
  call   <puts@plt>
  lea    D91(%rip),%rdi
  call   <puts@plt>
  lea    D9(%rip),%rdi
  pop    %rbp
  jmp    1060 <puts@plt>
```

tool_calls: name: disassemble_data
arguments: data_label: D3
type_infered: string
name: disassemble_data
arguments: data_label: D90
type_infered: string
name: disassemble_data
arguments: data_label: D13
type_infered: string
name: disassemble_data
arguments: data_label: D117
type_infered: string
name: disassemble_data
arguments: data_label: D22
type_infered: string
name: disassemble_data
arguments: data_label: D102
type_infered: string
name: disassemble_data
arguments: data_label: D5
type_infered: string
name: disassemble_data
arguments: data_label: D25
type_infered: string
name: disassemble_data
arguments: data_label: D114
type_infered: string
name: disassemble_data
arguments: data_label: D38
type_infered: string
name: disassemble_data
arguments: data_label: D119
type_infered: string
name: disassemble_data
arguments: data_label: D91
type_infered: string
name: disassemble_data
arguments: data_label: D9
type_infered: string

tool: D3: Usage:

tool: D90: 	%s [ -stq ] [ -i input_file ] [ -o output_file ] [ -b bitrate ] [ -e encoder_module ] [ -l length ]


tool: D13: 	%s [ -h ]


tool: D117: 	-s	 - Show summary statistics

tool: D22: 	-t	 - Do not perform tag detection, and do not copy tags to output file

tool: D102: 	-q	 - Do not check inputfile for validity, must be used when readin from pipes

tool: D5: 	-i	 - Decode audio from this file

tool: D25: 	-o	 - Encode audio to this file

tool: D114: 	-b	 - Encode at this bitrate

tool: D38: 	-d	 - DEcode input as this format

tool: D119: 	-e	 - Encode output in this format

tool: D91: 	-l	 - Reencode for at most this many seconds

tool: D9: 	-h	 - Output this usage information

assistant: ```c
void mog_showhelp(char *app) {
  printf("Usage:\n");
  printf("\t%s [ -stq ] [ -i input_file ] [ -o output_file ] [ -b bitrate ] [ -e encoder_module ] [ -l length ]\n", app);
  printf("\t%s [ -h ]\n", app);
  printf("\t-s\t - Show summary statistics\n");
  printf("\t-t\t - Do not perform tag detection, and do not copy tags to output file\n");
  printf("\t-q\t - Do not check inputfile for validity, must be used when readin from pipes\n");
  printf("\t-i\t - Decode audio from this file\n");
  printf("\t-o\t - Encode audio to this file\n");
  printf("\t-b\t - Encode at this bitrate\n");
  printf("\t-d\t - DEcode input as this format\n");
  printf("\t-e\t - Encode output in this format\n");
  printf("\t-l\t - Reencode for at most this many seconds\n");
  printf("\t-h\t - Output this usage information\n");
}
```