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

```asm
<print_full_usage>:
  endbr64
  sub    $0x8,%rsp
  lea    D43(%rip),%rdi
  call   <printf@plt>
  lea    D36(%rip),%rdi
  call   <printf@plt>
  lea    D60(%rip),%rdi
  call   <printf@plt>
  lea    D96(%rip),%rdi
  call   <printf@plt>
  lea    D10(%rip),%rdi
  call   <printf@plt>
  lea    D77(%rip),%rdi
  call   <printf@plt>
  lea    D45(%rip),%rdi
  call   <printf@plt>
  lea    D76(%rip),%rdi
  call   <printf@plt>
  lea    D62(%rip),%rdi
  call   <printf@plt>
  lea    D148(%rip),%rdi
  call   <printf@plt>
  lea    D98(%rip),%rdi
  call   <printf@plt>
  lea    D85(%rip),%rdi
  call   <printf@plt>
  lea    D74(%rip),%rdi
  call   <printf@plt>
  lea    D146(%rip),%rdi
  call   <printf@plt>
  lea    D101(%rip),%rdi
  add    $0x8,%rsp
  jmp    1050 <printf@plt>
```

tool_calls: name: disassemble_data
arguments: label: D43
type: string
name: disassemble_data
arguments: label: D36
type: string
name: disassemble_data
arguments: label: D60
type: string
name: disassemble_data
arguments: label: D96
type: string
name: disassemble_data
arguments: label: D10
type: string
name: disassemble_data
arguments: label: D77
type: string
name: disassemble_data
arguments: label: D45
type: string
name: disassemble_data
arguments: label: D76
type: string
name: disassemble_data
arguments: label: D62
type: string
name: disassemble_data
arguments: label: D148
type: string
name: disassemble_data
arguments: label: D98
type: string
name: disassemble_data
arguments: label: D85
type: string
name: disassemble_data
arguments: label: D74
type: string
name: disassemble_data
arguments: label: D146
type: string
name: disassemble_data
arguments: label: D101
type: string

tool: D43: usage:



tool: D36:    test: beeversion <packageA> -{lt|le|gt|ge|eq|ne} <packageB>


tool: D60:  filter: beeversion [filter-options] -{min|max} <package1> [.. <packageN>]


tool: D96:   parse: beeversion [parse-options] <package>



tool: D10:          package := <pkgfullname>-<pkgfullversion>-<pkgrevision>


tool: D77:                   | <pkgfullname>-<pkgfullversion>


tool: D45:                   | <pkgfullversion>



tool: D76:      pkgfullname := <pkgname>


tool: D62:                   | <pkgname>_<pkgsubname>



tool: D148:   pkgfullversion := <pkgversion>


tool: D98:                   | <pkgversion>_<pkgextraversion>



tool: D85:      pkgrevision := <pkgrevision>


tool: D74:                   | <pkgrevision>.<arch>



tool: D146:    filter-options:



tool: D101:       --filter-pkgfullname=<pkgfullname>



assistant: ```c
void print_full_usage(void) {
  printf("usage:\n\n");
  printf("   test: beeversion <packageA> -{lt|le|gt|ge|eq|ne} <packageB>\n");
  printf(" filter: beeversion [filter-options] -{min|max} <package1> [.. <packageN>]\n");
  printf("  parse: beeversion [parse-options] <package>\n\n");
  printf("         package := <pkgfullname>-<pkgfullversion>-<pkgrevision>\n");
  printf("                  | <pkgfullname>-<pkgfullversion>\n");
  printf("                  | <pkgfullversion>\n\n");
  printf("     pkgfullname := <pkgname>\n");
  printf("                  | <pkgname>_<pkgsubname>\n\n");
  printf("  pkgfullversion := <pkgversion>\n");
  printf("                  | <pkgversion>_<pkgextraversion>\n\n");
  printf("     pkgrevision := <pkgrevision>\n");
  printf("                  | <pkgrevision>.<arch>\n\n");
  printf("   filter-options:\n\n");
  printf("      --filter-pkgfullname=<pkgfullname>\n\n");
}
```