user: What is the c source code of the assembly code below?

```asm
<main>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x30,%rsp
  mov    %edi,-0x24(%rbp)
  mov    %rsi,-0x30(%rbp)
  mov    %fs:0x28,%rax
  mov    %rax,-0x8(%rbp)
  xor    %eax,%eax
  lea    D87(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  lea    D133(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  lea    -0x1c(%rbp),%rax
  mov    %rax,%rsi
  lea    D89(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <scanf@plt>
  lea    D143(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  lea    -0x14(%rbp),%rax
  mov    %rax,%rsi
  lea    D70(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <scanf@plt>
  lea    D147(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  lea    D133(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  lea    -0x18(%rbp),%rax
  mov    %rax,%rsi
  lea    D89(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <scanf@plt>
  lea    D143(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  lea    -0x10(%rbp),%rax
  mov    %rax,%rsi
  lea    D70(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <scanf@plt>
  lea    D77(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  mov    -0x1c(%rbp),%edx
  mov    -0x18(%rbp),%eax
  cmp    %eax,%edx
  jle    L21
  mov    -0x1c(%rbp),%eax
  mov    %eax,-0xc(%rbp)
  mov    -0x1c(%rbp),%eax
  mov    %eax,%edx
  mov    $0x82,%esi
  lea    D158(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  mov    $0x82,%esi
  lea    D122(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  jmp    L25
L21:
  mov    -0x18(%rbp),%eax
  mov    %eax,%edx
  mov    $0x82,%esi
  lea    D158(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  mov    $0x82,%esi
  lea    D175(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
L25:
  movss  -0x14(%rbp),%xmm1
  movss  -0x10(%rbp),%xmm0
  comiss %xmm1,%xmm0
  jbe    L0
  mov    $0x82,%esi
  lea    D105(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  mov    $0x82,%esi
  lea    D119(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  jmp    L3
L0:
  mov    $0x82,%esi
  lea    D76(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  mov    $0x82,%esi
  lea    D126(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
L3:
  mov    $0x0,%eax
  mov    -0x8(%rbp),%rdx
  sub    %fs:0x28,%rdx
  je     L13
  call   <__stack_chk_fail@plt>
L13:
  leave
  ret
```

tool_calls: name: disassemble_data
arguments: data_tag: D87
data_type: string
name: disassemble_data
arguments: data_tag: D133
data_type: string
name: disassemble_data
arguments: data_tag: D89
data_type: string
name: disassemble_data
arguments: data_tag: D143
data_type: string
name: disassemble_data
arguments: data_tag: D70
data_type: string
name: disassemble_data
arguments: data_tag: D147
data_type: string
name: disassemble_data
arguments: data_tag: D77
data_type: string
name: disassemble_data
arguments: data_tag: D158
data_type: string
name: disassemble_data
arguments: data_tag: D122
data_type: string
name: disassemble_data
arguments: data_tag: D175
data_type: string
name: disassemble_data
arguments: data_tag: D105
data_type: string
name: disassemble_data
arguments: data_tag: D119
data_type: string
name: disassemble_data
arguments: data_tag: D76
data_type: string
name: disassemble_data
arguments: data_tag: D126
data_type: string

tool: D87: 
=======PESSOA 1=======

tool: D133: 
Idade: 

tool: D89: %d

tool: D143: 
Peso: 

tool: D70: %f

tool: D147: 
=======PESSOA 2=======

tool: D77: 
======= Informacoes =======

tool: D158: 
maior idade %c %d!


tool: D122: Pessoa mais velha %c pessoa1


tool: D175: Pessoa mais velha %c pessoa2


tool: D105: Pessoa mais leve %c a pessoa1
,

tool: D119: e a mais pesada %c a pessoa 2!


tool: D76: Pessoa mais leve %c a pessoa2!


tool: D126: e a mais pesada %c a pessoa 1!


assistant: ```c
int main(int argc, char *argv) {
  int idade1, idade2, maior_idade, mais_velho, mais_leve;
  float peso1, peso2, menor_peso;
  printf("\n=======PESSOA 1=======");
  printf("\nIdade: ");
  scanf("%d", &idade1);
  printf("\nPeso: ");
  scanf("%f", &peso1);
  printf("\n=======PESSOA 2=======");
  printf("\nIdade: ");
  scanf("%d", &idade2);
  printf("\nPeso: ");
  scanf("%f", &peso2);
  printf("\n======= Informacoes =======");
  if (idade1 > idade2) {
    maior_idade = idade1;
    printf("\nmaior idade %c %d!\n", 130, idade1);
    printf("Pessoa mais velha %c pessoa1\n", 130);
  } else {
    printf("\nmaior idade %c %d!\n", 130, idade2);
    printf("Pessoa mais velha %c pessoa2\n", 130);
  }
  if (peso1 < peso2) {
    printf("Pessoa mais leve %c a pessoa1\n,", 130);
    printf("e a mais pesada %c a pessoa 2!\n", 130);
  } else {
    printf("Pessoa mais leve %c a pessoa2!\n", 130);
    printf("e a mais pesada %c a pessoa 1!\n", 130);
  }
}
```