user: 请将这段汇编代码片段转换成等效的C代码:

```asm
<usage>:
  endbr64
  sub    $0x8,%rsp
  lea    D214(%rip),%rdi
  call   <printf@plt>
  lea    D37(%rip),%rdi
  call   <printf@plt>
  lea    D66(%rip),%rdi
  call   <printf@plt>
  lea    D163(%rip),%rdi
  call   <printf@plt>
  lea    D50(%rip),%rdi
  call   <printf@plt>
  lea    D196(%rip),%rdi
  call   <printf@plt>
  lea    D49(%rip),%rdi
  call   <printf@plt>
  lea    D129(%rip),%rdi
  call   <printf@plt>
  lea    D131(%rip),%rdi
  call   <printf@plt>
  lea    D71(%rip),%rdi
  call   <printf@plt>
  lea    D229(%rip),%rdi
  call   <printf@plt>
  lea    D174(%rip),%rdi
  call   <printf@plt>
  lea    D2(%rip),%rdi
  call   <printf@plt>
  lea    D59(%rip),%rdi
  call   <printf@plt>
  lea    D168(%rip),%rdi
  call   <printf@plt>
  lea    D46(%rip),%rdi
  call   <printf@plt>
  lea    D146(%rip),%rdi
  call   <printf@plt>
  lea    D30(%rip),%rdi
  call   <printf@plt>
  lea    D211(%rip),%rdi
  call   <printf@plt>
  lea    D195(%rip),%rdi
  call   <printf@plt>
  lea    D173(%rip),%rdi
  call   <printf@plt>
  lea    D55(%rip),%rdi
  call   <printf@plt>
  lea    D58(%rip),%rdi
  call   <printf@plt>
  mov    $0x1,%edi
  add    $0x8,%rsp
  jmp    1070 <exit@plt>
```

tool_calls: name: unpack_data
arguments: label: D214
datatype: string
name: unpack_data
arguments: label: D37
datatype: string
name: unpack_data
arguments: label: D66
datatype: string
name: unpack_data
arguments: label: D163
datatype: string
name: unpack_data
arguments: label: D50
datatype: string
name: unpack_data
arguments: label: D196
datatype: string
name: unpack_data
arguments: label: D49
datatype: string
name: unpack_data
arguments: label: D129
datatype: string
name: unpack_data
arguments: label: D131
datatype: string
name: unpack_data
arguments: label: D71
datatype: string
name: unpack_data
arguments: label: D229
datatype: string
name: unpack_data
arguments: label: D174
datatype: string
name: unpack_data
arguments: label: D2
datatype: string
name: unpack_data
arguments: label: D59
datatype: string
name: unpack_data
arguments: label: D168
datatype: string
name: unpack_data
arguments: label: D46
datatype: string
name: unpack_data
arguments: label: D146
datatype: string
name: unpack_data
arguments: label: D30
datatype: string
name: unpack_data
arguments: label: D211
datatype: string
name: unpack_data
arguments: label: D195
datatype: string
name: unpack_data
arguments: label: D173
datatype: string
name: unpack_data
arguments: label: D55
datatype: string
name: unpack_data
arguments: label: D58
datatype: string

tool: D214: Usage: elftosb1 [options]


tool: D37: Options:


tool: D66:   -h/-?/-help			Display this message


tool: D163:   -o <file>			Set output file


tool: D50:   -d/-debugon			Enable debug output


tool: D196:   -k <file>			Set key file


tool: D49:   -load-binary <file> <addr>	Load a binary file at a specified address


tool: D129:   -drive-tag <tag>		Specify drive tag


tool: D131:   -w/-switchdriver <driver>	Switch driver


tool: D71:   -sdram <chip select> <size>	Init SDRAM


tool: D229:   -jumparg <uint>		Set jumpparg for jump and jumpreturn


tool: D174:   -f/-load <file>		Load a ELF file


tool: D2:   -r/-loadjumpreturn <file>	Load a ELF file and call it


tool: D59:   -j/-loadjump <file>		Load a ELF file and jump to it


tool: D168:   -R/-rom <uint>		Set ROM version


tool: D46:   -p/-product <ver>		Set product version (xxx.xxx.xxx)


tool: D146:   -v/-component <ver>		Set component version (xxx.xxx.xxx)


tool: D30:   -c/-critical			Set critical flag


tool: D211:   -C/-noncritical		Clear critical flag


tool: D195:   -n/-strict			Set strict flag


tool: D173:   -N/-nonstrict			Clear strict flag


tool: D55:   -call <addr>			Call code at a specified address


tool: D58:   -jump <addr>			Jump to code at a specified address


assistant: ```c
void usage(void) {
  printf("Usage: elftosb1 [options]\n");
  printf("Options:\n");
  printf("  -h/-?/-help\t\t\tDisplay this message\n");
  printf("  -o <file>\t\t\tSet output file\n");
  printf("  -d/-debugon\t\t\tEnable debug output\n");
  printf("  -k <file>\t\t\tSet key file\n");
  printf("  -load-binary <file> <addr>\tLoad a binary file at a specified address\n");
  printf("  -drive-tag <tag>\t\tSpecify drive tag\n");
  printf("  -w/-switchdriver <driver>\tSwitch driver\n");
  printf("  -sdram <chip select> <size>\tInit SDRAM\n");
  printf("  -jumparg <uint>\t\tSet jumpparg for jump and jumpreturn\n");
  printf("  -f/-load <file>\t\tLoad a ELF file\n");
  printf("  -r/-loadjumpreturn <file>\tLoad a ELF file and call it\n");
  printf("  -j/-loadjump <file>\t\tLoad a ELF file and jump to it\n");
  printf("  -R/-rom <uint>\t\tSet ROM version\n");
  printf("  -p/-product <ver>\t\tSet product version (xxx.xxx.xxx)\n");
  printf("  -v/-component <ver>\t\tSet component version (xxx.xxx.xxx)\n");
  printf("  -c/-critical\t\t\tSet critical flag\n");
  printf("  -C/-noncritical\t\tClear critical flag\n");
  printf("  -n/-strict\t\t\tSet strict flag\n");
  printf("  -N/-nonstrict\t\t\tClear strict flag\n");
  printf("  -call <addr>\t\t\tCall code at a specified address\n");
  printf("  -jump <addr>\t\t\tJump to code at a specified address\n");
  exit(1);
}
```