user: Converte this assembly snippet into its equivalent C code:

```asm
<main>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x20,%rsp
  mov    %fs:0x28,%rax
  mov    %rax,-0x8(%rbp)
  xor    %eax,%eax
  movss  D33(%rip),%xmm0
  movss  %xmm0,-0x18(%rbp)
  movss  D21(%rip),%xmm0
  movss  %xmm0,-0x14(%rbp)
  movss  D47(%rip),%xmm0
  movss  %xmm0,-0x10(%rbp)
  pxor   %xmm0,%xmm0
  movss  %xmm0,-0xc(%rbp)
  pxor   %xmm0,%xmm0
  movss  %xmm0,-0x20(%rbp)
  lea    D78(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  lea    -0x20(%rbp),%rax
  mov    %rax,%rsi
  lea    D116(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <scanf@plt>
  movl   $0x0,-0x1c(%rbp)
  lea    D68(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  lea    D110(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  lea    -0x1c(%rbp),%rax
  mov    %rax,%rsi
  lea    D118(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <scanf@plt>
  mov    -0x1c(%rbp),%eax
  cmp    $0x3,%eax
  je     L83
  cmp    $0x3,%eax
  jg     L82
  cmp    $0x1,%eax
  je     L69
  cmp    $0x2,%eax
  je     L81
  jmp    L82
L69:
  movss  -0x20(%rbp),%xmm0
  movss  -0x18(%rbp),%xmm1
  mulss  %xmm1,%xmm0
  movss  %xmm0,-0xc(%rbp)
  pxor   %xmm2,%xmm2
  cvtss2sd -0xc(%rbp),%xmm2
  movq   %xmm2,%rax
  movq   %rax,%xmm0
  lea    D114(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  jmp    L77
L81:
  movss  -0x20(%rbp),%xmm0
  movss  -0x14(%rbp),%xmm1
  mulss  %xmm1,%xmm0
  movss  %xmm0,-0xc(%rbp)
  pxor   %xmm3,%xmm3
  cvtss2sd -0xc(%rbp),%xmm3
  movq   %xmm3,%rax
  movq   %rax,%xmm0
  lea    D106(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  jmp    L77
L83:
  movss  -0x20(%rbp),%xmm0
  movss  -0x10(%rbp),%xmm1
  mulss  %xmm1,%xmm0
  movss  %xmm0,-0xc(%rbp)
  pxor   %xmm4,%xmm4
  cvtss2sd -0xc(%rbp),%xmm4
  movq   %xmm4,%rax
  movq   %rax,%xmm0
  lea    D22(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  jmp    L77
L82:
  lea    D41(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  nop
L77:
  mov    $0x0,%eax
  mov    -0x8(%rbp),%rdx
  sub    %fs:0x28,%rdx
  je     L73
  call   <__stack_chk_fail@plt>
L73:
  leave
  ret
```

tool_calls: name: retrieve_data
arguments: tag: D33
type_infered: f32
name: retrieve_data
arguments: tag: D21
type_infered: f32
name: retrieve_data
arguments: tag: D47
type_infered: f32
name: retrieve_data
arguments: tag: D78
type_infered: string
name: retrieve_data
arguments: tag: D116
type_infered: string
name: retrieve_data
arguments: tag: D68
type_infered: string
name: retrieve_data
arguments: tag: D110
type_infered: string
name: retrieve_data
arguments: tag: D118
type_infered: string
name: retrieve_data
arguments: tag: D114
type_infered: string
name: retrieve_data
arguments: tag: D106
type_infered: string
name: retrieve_data
arguments: tag: D22
type_infered: string
name: retrieve_data
arguments: tag: D41
type_infered: string

tool: D33: 0.02265

tool: D21: 2.43877

tool: D47: 0.01443

tool: D78: Enter Amount You Want Corvert: 

tool: D116: %f

tool: D68: 
What Type Currency You Want To Corvert

tool: D110: 
1 = USD, 2 = JPY, 3 = EUR. : 

tool: D118: %d

tool: D114: 
Total Amount in USD:%f

tool: D106: 
Total Amount in JPY:%f

tool: D22: 
Total Amount in EUR:%f

tool: D41: 
Invaid Input

assistant: ```c
int main() {
  float PHPToUSD = 0.02265;
  float PHPToJPY = 2.43877;
  float PHPToEUR = 0.01443;
  float CorvertedAmount = 0;
  float PHPAmount = 0;
  printf("Enter Amount You Want Corvert: ");
  scanf("%f", &PHPAmount);
  int CurrencyCorvert = 0;
  printf("\nWhat Type Currency You Want To Corvert");
  printf("\n1 = USD, 2 = JPY, 3 = EUR. : ");
  scanf("%d", &CurrencyCorvert);
  switch (CurrencyCorvert) {
  case 1:
    CorvertedAmount = PHPAmount * PHPToUSD;
    printf("\nTotal Amount in USD:%f", CorvertedAmount);
    break;
  case 2:
    CorvertedAmount = PHPAmount * PHPToJPY;
    printf("\nTotal Amount in JPY:%f", CorvertedAmount);
    break;
  case 3:
    CorvertedAmount = PHPAmount * PHPToEUR;
    printf("\nTotal Amount in EUR:%f", CorvertedAmount);
    break;
  default:
    printf("\nInvaid Input");
    break;
  }
  return 0;
}
```