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

```asm
<main>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x10,%rsp
  mov    %fs:0x28,%rax
  mov    %rax,-0x8(%rbp)
  xor    %eax,%eax
  lea    D96(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D113(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D150(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D61(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D24(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D7(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D115(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D155(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D92(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    D151(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
  lea    -0xc(%rbp),%rax
  mov    %rax,%rsi
  lea    D55(%rip),%rax
  mov    %rax,%rdi
  call   <scanf@plt>
  lea    D101(%rip),%rax
  mov    %rax,%rdi
  call   <system@plt>
  mov    -0xc(%rbp),%eax
  cmp    $0x7,%eax
  ja     L38
  mov    %eax,%eax
  lea    0x0(,%rax,4),%rdx
  lea    D132(%rip),%rax
  mov    (%rdx,%rax,1),%eax
  cltq
  lea    D132(%rip),%rdx
  add    %rdx,%rax
  notrack jmp *%rax
  mov    $0x0,%eax
  call   <raices@plt>
  jmp    L16
  mov    $0x0,%eax
  call   <matrices@plt>
  jmp    L16
  mov    $0x0,%eax
  call   <gauss@plt>
  jmp    L16
  mov    $0x0,%eax
  call   <interpolacion@plt>
  jmp    L16
  mov    $0x0,%eax
  call   <minimos@plt>
  jmp    L16
  mov    $0x0,%eax
  call   <integracion@plt>
  jmp    L16
  mov    $0x0,%eax
  call   <euler@plt>
  jmp    L16
L38:
  lea    D101(%rip),%rax
  mov    %rax,%rdi
  call   <system@plt>
  lea    D11(%rip),%rax
  mov    %rax,%rdi
  call   <printf@plt>
L16:
  mov    $0x0,%eax
  mov    -0x8(%rbp),%rdx
  sub    %fs:0x28,%rdx
  je     L75
  call   <__stack_chk_fail@plt>
L75:
  leave
  ret
```

tool_calls: name: extract_symbolic_data
arguments: label: D96
data_type: string
name: extract_symbolic_data
arguments: label: D113
data_type: string
name: extract_symbolic_data
arguments: label: D150
data_type: string
name: extract_symbolic_data
arguments: label: D61
data_type: string
name: extract_symbolic_data
arguments: label: D24
data_type: string
name: extract_symbolic_data
arguments: label: D7
data_type: string
name: extract_symbolic_data
arguments: label: D115
data_type: string
name: extract_symbolic_data
arguments: label: D155
data_type: string
name: extract_symbolic_data
arguments: label: D92
data_type: string
name: extract_symbolic_data
arguments: label: D151
data_type: string
name: extract_symbolic_data
arguments: label: D55
data_type: string
name: extract_symbolic_data
arguments: label: D101
data_type: string
name: extract_symbolic_data
arguments: label: D11
data_type: string

tool: D96: ESIME Zacatenco


tool: D113: Alumno: Tovar Ochoa Kevin Ricardo


tool: D150: Profesor: Martinez Roldan Enrique


tool: D61: Materia: Analisis numerico


tool: D24: Grupo: 3AM1



tool: D7: 1.-Raices
2.-Matrices
3.-Sistemas de ecuacion


tool: D115: 4.-Interpolacion


tool: D155: 5.-Minimos Cuadrados


tool: D92: 6.-Integracions


tool: D151: 7.- EDO


tool: D55: %d

tool: D101: cls

tool: D11: Opcion Invalida

assistant: ```c
int main() {
  int menu;
  printf("ESIME Zacatenco\n");
  printf("Alumno: Tovar Ochoa Kevin Ricardo\n");
  printf("Profesor: Martinez Roldan Enrique\n");
  printf("Materia: Analisis numerico\n");
  printf("Grupo: 3AM1\n\n");
  printf("1.-Raices\n2.-Matrices\n3.-Sistemas de ecuacion\n");
  printf("4.-Interpolacion\n");
  printf("5.-Minimos Cuadrados\n");
  printf("6.-Integracions\n");
  printf("7.- EDO\n");
  scanf("%d", &menu);
  system("cls");
  switch (menu) {
  case 1:
    raices();
    break;
  case 2:
    matrices();
    break;
  case 3:
    gauss();
    break;
  case 4:
    interpolacion();
    break;
  case 5:
    minimos();
    break;
  case 6:
    integracion();
    break;
  case 7:
    euler();
    break;
  default:
    system("cls");
    printf("Opcion Invalida");
  }
  return 0;
}
```