user: Translate the below assembly code into C programming language:

```asm
<help>:
  endbr64
  sub    $0x8,%rsp
  lea    D190(%rip),%rdi
  call   <printf@plt>
  lea    D199(%rip),%rdi
  call   <printf@plt>
  lea    D143(%rip),%rdi
  call   <printf@plt>
  lea    D123(%rip),%rdi
  call   <printf@plt>
  lea    D32(%rip),%rdi
  call   <printf@plt>
  lea    D129(%rip),%rdi
  call   <printf@plt>
  lea    D171(%rip),%rdi
  call   <printf@plt>
  lea    D4(%rip),%rdi
  call   <printf@plt>
  lea    D184(%rip),%rdi
  call   <printf@plt>
  lea    D167(%rip),%rdi
  call   <printf@plt>
  lea    D111(%rip),%rdi
  call   <printf@plt>
  lea    D29(%rip),%rdi
  call   <printf@plt>
  lea    D205(%rip),%rdi
  call   <printf@plt>
  lea    D181(%rip),%rdi
  call   <printf@plt>
  lea    D235(%rip),%rdi
  call   <printf@plt>
  lea    D95(%rip),%rdi
  call   <printf@plt>
  lea    D127(%rip),%rdi
  call   <printf@plt>
  lea    D116(%rip),%rdi
  call   <printf@plt>
  lea    D144(%rip),%rdi
  call   <printf@plt>
  lea    D218(%rip),%rdi
  call   <printf@plt>
  lea    D145(%rip),%rdi
  call   <printf@plt>
  lea    D168(%rip),%rdi
  call   <printf@plt>
  lea    D159(%rip),%rdi
  call   <printf@plt>
  lea    D212(%rip),%rdi
  call   <printf@plt>
  lea    D206(%rip),%rdi
  call   <printf@plt>
  lea    D134(%rip),%rdi
  call   <printf@plt>
  mov    $0x1,%edi
  add    $0x8,%rsp
  jmp    1070 <exit@plt>
```

tool_calls: name: unpack_data
arguments: tag: D190
type: string
name: unpack_data
arguments: tag: D199
type: string
name: unpack_data
arguments: tag: D143
type: string
name: unpack_data
arguments: tag: D123
type: string
name: unpack_data
arguments: tag: D32
type: string
name: unpack_data
arguments: tag: D129
type: string
name: unpack_data
arguments: tag: D171
type: string
name: unpack_data
arguments: tag: D4
type: string
name: unpack_data
arguments: tag: D184
type: string
name: unpack_data
arguments: tag: D167
type: string
name: unpack_data
arguments: tag: D111
type: string
name: unpack_data
arguments: tag: D29
type: string
name: unpack_data
arguments: tag: D205
type: string
name: unpack_data
arguments: tag: D181
type: string
name: unpack_data
arguments: tag: D235
type: string
name: unpack_data
arguments: tag: D95
type: string
name: unpack_data
arguments: tag: D127
type: string
name: unpack_data
arguments: tag: D116
type: string
name: unpack_data
arguments: tag: D144
type: string
name: unpack_data
arguments: tag: D218
type: string
name: unpack_data
arguments: tag: D145
type: string
name: unpack_data
arguments: tag: D168
type: string
name: unpack_data
arguments: tag: D159
type: string
name: unpack_data
arguments: tag: D212
type: string
name: unpack_data
arguments: tag: D206
type: string
name: unpack_data
arguments: tag: D134
type: string

tool: D190: Usage:


tool: D199:   etcjs_cli [ -k key -o owner ] -a action [ -c configuration ]

tool: D143:  [ -h ]


tool: D123: 	[ -n hostname -p port ] [ -d data ] 


tool: D32: Options:


tool: D129:   -o owner		the owner of the configurations


tool: D171:   -k key		the owner key


tool: D4:   -a action		create set get list, 

tool: D184: (only 1st letter matters) 
			available actions: 


tool: D167: 			  c: create owner


tool: D111: 			  g: get configuration


tool: D29: 			  S: get configuration stat


tool: D205: 			  s: set configuration


tool: D181: 			  l: list configurations


tool: D235:   -c configuration	the name of the configuration


tool: D95:   -h help		display this help


tool: D127:   -n hostname		the server name (default is localhost)


tool: D116:   -p port		the server port (default is 443)


tool: D144:   -d data		the data to post (with set action)


tool: D218:   			if not specified will create a blank one


tool: D145: Examples:


tool: D168:   etcjs_cli -o john -k sesame -a c -n etc.gpisc.in


tool: D159: 	will create the user john with password sesame on etc.gpisc.in


tool: D212:   etcjs_cli -o john -k sesame -a s -c myconf -d blah -p 1337


tool: D206: 	will set the configuration named myconf for user john


tool: D134: 	on server running on localhost on port 1337


assistant: ```c
void help() {
  printf("Usage:\n");
  printf("  etcjs_cli [ -k key -o owner ] -a action [ -c configuration ]");
  printf(" [ -h ]\n");
  printf("\t[ -n hostname -p port ] [ -d data ] \n");
  printf("Options:\n");
  printf("  -o owner\t\tthe owner of the configurations\n");
  printf("  -k key\t\tthe owner key\n");
  printf("  -a action\t\tcreate set get list, ");
  printf("(only 1st letter matters) \n\t\t\tavailable actions: \n");
  printf("\t\t\t  c: create owner\n");
  printf("\t\t\t  g: get configuration\n");
  printf("\t\t\t  S: get configuration stat\n");
  printf("\t\t\t  s: set configuration\n");
  printf("\t\t\t  l: list configurations\n");
  printf("  -c configuration\tthe name of the configuration\n");
  printf("  -h help\t\tdisplay this help\n");
  printf("  -n hostname\t\tthe server name (default is localhost)\n");
  printf("  -p port\t\tthe server port (default is 443)\n");
  printf("  -d data\t\tthe data to post (with set action)\n");
  printf("  \t\t\tif not specified will create a blank one\n");
  printf("Examples:\n");
  printf("  etcjs_cli -o john -k sesame -a c -n etc.gpisc.in\n");
  printf("\twill create the user john with password sesame on etc.gpisc.in\n");
  printf("  etcjs_cli -o john -k sesame -a s -c myconf -d blah -p 1337\n");
  printf("\twill set the configuration named myconf for user john\n");
  printf("\ton server running on localhost on port 1337\n");
  exit(1);
}
```