user: Converte this assembly snippet into its equivalent C code:

```asm
<conf_usage>:
  endbr64
  sub    $0x8,%rsp
  mov    %rdi,%rsi
  lea    D44(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    D2(%rip),%rdi
  call   <puts@plt>
  lea    D49(%rip),%rdi
  call   <puts@plt>
  lea    D165(%rip),%rdi
  call   <puts@plt>
  lea    D26(%rip),%rdi
  call   <puts@plt>
  lea    D152(%rip),%rdi
  call   <puts@plt>
  lea    D74(%rip),%rdi
  call   <puts@plt>
  lea    D105(%rip),%rdi
  call   <puts@plt>
  lea    D61(%rip),%rdi
  call   <puts@plt>
  lea    D113(%rip),%rdi
  call   <puts@plt>
  lea    D115(%rip),%rdi
  call   <puts@plt>
  lea    D136(%rip),%rdi
  call   <puts@plt>
  lea    D27(%rip),%rdi
  call   <puts@plt>
  lea    D127(%rip),%rdi
  call   <puts@plt>
  lea    D101(%rip),%rdi
  call   <puts@plt>
  lea    D3(%rip),%rdi
  call   <puts@plt>
  lea    D64(%rip),%rdi
  add    $0x8,%rsp
  jmp    1060 <puts@plt>
```

tool_calls: name: parse_data
arguments: data_tag: D44
data_type: string
name: parse_data
arguments: data_tag: D2
data_type: string
name: parse_data
arguments: data_tag: D49
data_type: string
name: parse_data
arguments: data_tag: D165
data_type: string
name: parse_data
arguments: data_tag: D26
data_type: string
name: parse_data
arguments: data_tag: D152
data_type: string
name: parse_data
arguments: data_tag: D74
data_type: string
name: parse_data
arguments: data_tag: D105
data_type: string
name: parse_data
arguments: data_tag: D61
data_type: string
name: parse_data
arguments: data_tag: D113
data_type: string
name: parse_data
arguments: data_tag: D115
data_type: string
name: parse_data
arguments: data_tag: D136
data_type: string
name: parse_data
arguments: data_tag: D27
data_type: string
name: parse_data
arguments: data_tag: D127
data_type: string
name: parse_data
arguments: data_tag: D101
data_type: string
name: parse_data
arguments: data_tag: D3
data_type: string
name: parse_data
arguments: data_tag: D64
data_type: string

tool: D44: Usage: %s [-s] [--fatalrecursive] [option] <kconfig-file>


tool: D2: [option] is _one_ of the following:

tool: D49:   --listnewconfig         List new options

tool: D165:   --helpnewconfig         List new options and help text

tool: D26:   --oldaskconfig          Start a new configuration using a line-oriented program

tool: D152:   --oldconfig             Update a configuration using a provided .config as base

tool: D74:   --syncconfig            Similar to oldconfig but generates configuration in
                          include/{generated/,config/}

tool: D105:   --olddefconfig          Same as oldconfig but sets new symbols to their default value

tool: D61:   --defconfig <file>      New config with default defined in <file>

tool: D113:   --savedefconfig <file>  Save the minimal current configuration to <file>

tool: D115:   --allnoconfig           New config where all options are answered with no

tool: D136:   --allyesconfig          New config where all options are answered with yes

tool: D27:   --allmodconfig          New config where all options are answered with mod

tool: D127:   --alldefconfig          New config with all symbols set to default

tool: D101:   --randconfig            New config with random answer to all options

tool: D3:   --yes2modconfig         Change answers from yes to mod if possible

tool: D64:   --mod2yesconfig         Change answers from mod to yes if possible

assistant: ```c
void conf_usage(const char *progname) {
  printf("Usage: %s [-s] [--fatalrecursive] [option] <kconfig-file>\n", progname);
  printf("[option] is _one_ of the following:\n");
  printf("  --listnewconfig         List new options\n");
  printf("  --helpnewconfig         List new options and help text\n");
  printf("  --oldaskconfig          Start a new configuration using a line-oriented program\n");
  printf("  --oldconfig             Update a configuration using a provided .config as base\n");
  printf("  --syncconfig            Similar to oldconfig but generates configuration in\n"
         "                          include/{generated/,config/}\n");
  printf("  --olddefconfig          Same as oldconfig but sets new symbols to their default value\n");
  printf("  --defconfig <file>      New config with default defined in <file>\n");
  printf("  --savedefconfig <file>  Save the minimal current configuration to <file>\n");
  printf("  --allnoconfig           New config where all options are answered with no\n");
  printf("  --allyesconfig          New config where all options are answered with yes\n");
  printf("  --allmodconfig          New config where all options are answered with mod\n");
  printf("  --alldefconfig          New config with all symbols set to default\n");
  printf("  --randconfig            New config with random answer to all options\n");
  printf("  --yes2modconfig         Change answers from yes to mod if possible\n");
  printf("  --mod2yesconfig         Change answers from mod to yes if possible\n");
}
```