user: 请显示与下面列出的汇编代码相匹配的C语言实现:

```asm
<displayMenu>:
  endbr64
  push   %rbp
  lea    D126(%rip),%rbp
  mov    %rbp,%rdi
  call   <printf@plt>
  lea    D45(%rip),%rdi
  call   <printf@plt>
  lea    D111(%rip),%rdi
  call   <printf@plt>
  lea    D76(%rip),%rdi
  call   <printf@plt>
  lea    D1(%rip),%rdi
  call   <printf@plt>
  lea    D7(%rip),%rdi
  call   <printf@plt>
  lea    D55(%rip),%rdi
  call   <printf@plt>
  lea    D75(%rip),%rdi
  call   <printf@plt>
  lea    D39(%rip),%rdi
  call   <printf@plt>
  lea    D27(%rip),%rdi
  call   <printf@plt>
  lea    D137(%rip),%rdi
  call   <printf@plt>
  lea    D51(%rip),%rdi
  call   <printf@plt>
  lea    D133(%rip),%rdi
  call   <printf@plt>
  lea    D77(%rip),%rdi
  call   <printf@plt>
  mov    %rbp,%rdi
  pop    %rbp
  jmp    1050 <printf@plt>
```

tool_calls: name: read_data
arguments: label: D126
type_infered: string
name: read_data
arguments: label: D45
type_infered: string
name: read_data
arguments: label: D111
type_infered: string
name: read_data
arguments: label: D76
type_infered: string
name: read_data
arguments: label: D1
type_infered: string
name: read_data
arguments: label: D7
type_infered: string
name: read_data
arguments: label: D55
type_infered: string
name: read_data
arguments: label: D75
type_infered: string
name: read_data
arguments: label: D39
type_infered: string
name: read_data
arguments: label: D27
type_infered: string
name: read_data
arguments: label: D137
type_infered: string
name: read_data
arguments: label: D51
type_infered: string
name: read_data
arguments: label: D133
type_infered: string
name: read_data
arguments: label: D77
type_infered: string

tool: D126: ------------------------------------------------------------------


tool: D45: Choose option (enter the part in brackets)


tool: D111: (I)nsert 	 - insert a new node 


tool: D76: (D)elete 	 - delete the node containing specified value 


tool: D1: delete (A)ll	 - delete the node containing specified value 


tool: D7: (F)ind 		 - ascertain the presence of the value in the tree 


tool: D55: find(M)in 	 - show the minimum of the tree 


tool: D75: findma(X) 	 - show the maximum of the tree 


tool: D39: (P)revious 	 - show the previous item according to the key 


tool: D27: (N)ext 		 - show the next item according to the key 


tool: D137: displa(Y) 	 - display tree (with structured indentation) 


tool: D51: c(L)ear 	 - clear screen (only for in *nix like OS) 


tool: D133: (H)elp 		 - displays this menu:) 


tool: D77: (Q)uit 		 - quit the program 


assistant: ```c
void displayMenu() {
  printf("------------------------------------------------------------------\n");
  printf("Choose option (enter the part in brackets)\n");
  printf("(I)nsert \t - insert a new node \n");
  printf("(D)elete \t - delete the node containing specified value \n");
  printf("delete (A)ll\t - delete the node containing specified value \n");
  printf("(F)ind \t\t - ascertain the presence of the value in the tree \n");
  printf("find(M)in \t - show the minimum of the tree \n");
  printf("findma(X) \t - show the maximum of the tree \n");
  printf("(P)revious \t - show the previous item according to the key \n");
  printf("(N)ext \t\t - show the next item according to the key \n");
  printf("displa(Y) \t - display tree (with structured indentation) \n");
  printf("c(L)ear \t - clear screen (only for in *nix like OS) \n");
  printf("(H)elp \t\t - displays this menu:) \n");
  printf("(Q)uit \t\t - quit the program \n");
  printf("------------------------------------------------------------------\n");
}
```