user: Please show me the C implementation that matches the assembly code listed below:

```asm
<print_help>:
  endbr64
  sub    $0x8,%rsp
  lea    D158(%rip),%rdi
  call   <printf@plt>
  lea    D172(%rip),%rdi
  call   <printf@plt>
  lea    D232(%rip),%rdi
  call   <printf@plt>
  lea    D100(%rip),%rdi
  call   <printf@plt>
  lea    D152(%rip),%rdi
  call   <printf@plt>
  lea    D193(%rip),%rdi
  call   <printf@plt>
  lea    D245(%rip),%rdi
  call   <printf@plt>
  lea    D129(%rip),%rdi
  call   <printf@plt>
  lea    D119(%rip),%rdi
  call   <printf@plt>
  lea    D116(%rip),%rdi
  call   <printf@plt>
  lea    D5(%rip),%rdi
  call   <printf@plt>
  lea    D52(%rip),%rdi
  call   <printf@plt>
  lea    D85(%rip),%rdi
  call   <printf@plt>
  lea    D107(%rip),%rdi
  call   <printf@plt>
  lea    D58(%rip),%rdi
  call   <printf@plt>
  lea    D135(%rip),%rdi
  call   <printf@plt>
  lea    D35(%rip),%rdi
  call   <printf@plt>
  lea    D38(%rip),%rdi
  call   <printf@plt>
  lea    D190(%rip),%rdi
  call   <printf@plt>
  lea    D225(%rip),%rdi
  call   <printf@plt>
  lea    D247(%rip),%rdi
  call   <printf@plt>
  lea    D237(%rip),%rdi
  call   <printf@plt>
  lea    D214(%rip),%rdi
  call   <printf@plt>
  lea    D265(%rip),%rdi
  call   <printf@plt>
  lea    D142(%rip),%rdi
  call   <printf@plt>
  lea    D8(%rip),%rdi
  call   <printf@plt>
  lea    D138(%rip),%rdi
  call   <printf@plt>
  lea    D175(%rip),%rdi
  call   <printf@plt>
  add    $0x8,%rsp
  ret
```

tool_calls: name: retrieve_data
arguments: data_tag: D158
datatype: string
name: retrieve_data
arguments: data_tag: D172
datatype: string
name: retrieve_data
arguments: data_tag: D232
datatype: string
name: retrieve_data
arguments: data_tag: D100
datatype: string
name: retrieve_data
arguments: data_tag: D152
datatype: string
name: retrieve_data
arguments: data_tag: D193
datatype: string
name: retrieve_data
arguments: data_tag: D245
datatype: string
name: retrieve_data
arguments: data_tag: D129
datatype: string
name: retrieve_data
arguments: data_tag: D119
datatype: string
name: retrieve_data
arguments: data_tag: D116
datatype: string
name: retrieve_data
arguments: data_tag: D5
datatype: string
name: retrieve_data
arguments: data_tag: D52
datatype: string
name: retrieve_data
arguments: data_tag: D85
datatype: string
name: retrieve_data
arguments: data_tag: D107
datatype: string
name: retrieve_data
arguments: data_tag: D58
datatype: string
name: retrieve_data
arguments: data_tag: D135
datatype: string
name: retrieve_data
arguments: data_tag: D35
datatype: string
name: retrieve_data
arguments: data_tag: D38
datatype: string
name: retrieve_data
arguments: data_tag: D190
datatype: string
name: retrieve_data
arguments: data_tag: D225
datatype: string
name: retrieve_data
arguments: data_tag: D247
datatype: string
name: retrieve_data
arguments: data_tag: D237
datatype: string
name: retrieve_data
arguments: data_tag: D214
datatype: string
name: retrieve_data
arguments: data_tag: D265
datatype: string
name: retrieve_data
arguments: data_tag: D142
datatype: string
name: retrieve_data
arguments: data_tag: D8
datatype: string
name: retrieve_data
arguments: data_tag: D138
datatype: string
name: retrieve_data
arguments: data_tag: D175
datatype: string

tool: D158: FUNTZIO NAGUSIAK 


tool: D172: <?>			 Laguntza hau bistaratu 


tool: D232: <ESC>		 Programatik irten 


tool: D100: <F>			 Objektua bat kargatu


tool: D152: <TAB>		 Kargaturiko objektuen artean bat hautatu


tool: D193: <DEL>		 Hautatutako objektua ezabatu


tool: D245: <CTRL + ->	 Bistaratze-eremua handitu


tool: D129: <CTRL + +>	 Bistaratze-eremua txikitu


tool: D119: <I,i>		 Objektuaren informazioa pantailaratu


tool: D116: <Q,q>)		 Defektuz dagoen objektua kargau



tool: D5: ALDAKETA FUNTZIOAK 


tool: D52: <M,m>		 Translazioa aktibatu 


tool: D85: <B,b>		 Biraketa aktibatu 


tool: D107: <T,t>		 Tamaina aldaketa aktibatu 


tool: D58: <R,r>		 Islapena aktibatu 


tool: D135: <G,g>		 Aldaketa globalak aktibatu 


tool: D35: <L,l>		 Aldaketa lokalak aktibatu 


tool: D38: <O,o>		 Translazioa aktibatu 


tool: D190: <GORA>		 Mugitu +Y; Txikitu Y; Biratu +X 


tool: D225: <BEHERA>	 Mugitu -Y; Handitu Y; Biratu -X 


tool: D247: <ESKUINA>	 Mugitu +X; Txikitu X; Biratu +Y 


tool: D237: <EZKERRA>	 Mugitu -X; Handitu X; Biratu -Y 


tool: D214: <AVPAG>		 Mugitu +Z; Txikitu Z; Biratu +Z 


tool: D265: <REPAG>		 Mugitu -Z; Handitu Z; Biratu -Z 


tool: D142: <+>			 Objektua ardatz guztietan handitu 


tool: D8: <->			 Objektua ardatz guztietan txikitu 


tool: D138: <CTRL + (Z,z)>		 Aldaketak desegin 


tool: D175: 



assistant: ```c
void print_help() {
  printf("FUNTZIO NAGUSIAK \n");
  printf("<?>\t\t\t Laguntza hau bistaratu \n");
  printf("<ESC>\t\t Programatik irten \n");
  printf("<F>\t\t\t Objektua bat kargatu\n");
  printf("<TAB>\t\t Kargaturiko objektuen artean bat hautatu\n");
  printf("<DEL>\t\t Hautatutako objektua ezabatu\n");
  printf("<CTRL + ->\t Bistaratze-eremua handitu\n");
  printf("<CTRL + +>\t Bistaratze-eremua txikitu\n");
  printf("<I,i>\t\t Objektuaren informazioa pantailaratu\n");
  printf("<Q,q>)\t\t Defektuz dagoen objektua kargau\n\n");
  printf("ALDAKETA FUNTZIOAK \n");
  printf("<M,m>\t\t Translazioa aktibatu \n");
  printf("<B,b>\t\t Biraketa aktibatu \n");
  printf("<T,t>\t\t Tamaina aldaketa aktibatu \n");
  printf("<R,r>\t\t Islapena aktibatu \n");
  printf("<G,g>\t\t Aldaketa globalak aktibatu \n");
  printf("<L,l>\t\t Aldaketa lokalak aktibatu \n");
  printf("<O,o>\t\t Translazioa aktibatu \n");
  printf("<GORA>\t\t Mugitu +Y; Txikitu Y; Biratu +X \n");
  printf("<BEHERA>\t Mugitu -Y; Handitu Y; Biratu -X \n");
  printf("<ESKUINA>\t Mugitu +X; Txikitu X; Biratu +Y \n");
  printf("<EZKERRA>\t Mugitu -X; Handitu X; Biratu -Y \n");
  printf("<AVPAG>\t\t Mugitu +Z; Txikitu Z; Biratu +Z \n");
  printf("<REPAG>\t\t Mugitu -Z; Handitu Z; Biratu -Z \n");
  printf("<+>\t\t\t Objektua ardatz guztietan handitu \n");
  printf("<->\t\t\t Objektua ardatz guztietan txikitu \n");
  printf("<CTRL + (Z,z)>\t\t Aldaketak desegin \n");
  printf("\n\n");
}
```