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

```asm
<main>:
  endbr64
  push   %r14
  pxor   %xmm0,%xmm0
  lea    D23(%rip),%rdi
  lea    D76(%rip),%r14
  push   %r13
  lea    D50(%rip),%r13
  push   %r12
  push   %rbp
  sub    $0x88,%rsp
  mov    %fs:0x28,%rax
  mov    %rax,0x78(%rsp)
  xor    %eax,%eax
  movaps %xmm0,0x40(%rsp)
  lea    0x40(%rsp),%rbp
  lea    0x60(%rsp),%r12
  movaps %xmm0,0x60(%rsp)
  movl   $0x0,0x50(%rsp)
  movb   $0x0,0x54(%rsp)
  movl   $0x0,0x70(%rsp)
  movb   $0x0,0x74(%rsp)
  call   <printf@plt>
  lea    0x30(%rsp),%rsi
  mov    %r13,%rdi
  xor    %eax,%eax
  call   <scanf@plt>
  lea    D25(%rip),%rdi
  call   <puts@plt>
  lea    D139(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    %rbp,%rsi
  mov    %r14,%rdi
  xor    %eax,%eax
  call   <scanf@plt>
  lea    D239(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    %r12,%rsi
  mov    %r14,%rdi
  xor    %eax,%eax
  call   <scanf@plt>
  lea    D152(%rip),%r14
  lea    D212(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    0x34(%rsp),%rsi
  mov    %r14,%rdi
  xor    %eax,%eax
  call   <scanf@plt>
  lea    D245(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    0x38(%rsp),%rsi
  mov    %r14,%rdi
  xor    %eax,%eax
  call   <scanf@plt>
  lea    D190(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    0x3c(%rsp),%rsi
  mov    %r13,%rdi
  xor    %eax,%eax
  call   <scanf@plt>
  pxor   %xmm0,%xmm0
  pxor   %xmm1,%xmm1
  mov    %r12,%rdx
  cvtss2sd 0x30(%rsp),%xmm0
  cvtsi2ssl 0x38(%rsp),%xmm1
  mulsd  D70(%rip),%xmm0
  movss  D119(%rip),%xmm5
  mulss  0x3c(%rsp),%xmm5
  pxor   %xmm7,%xmm7
  mov    0x34(%rsp),%ecx
  xor    %eax,%eax
  movsd  D185(%rip),%xmm4
  mov    %rbp,%rsi
  lea    D238(%rip),%rdi
  cvtss2sd %xmm1,%xmm1
  mulsd  %xmm0,%xmm1
  addsd  D91(%rip),%xmm1
  movaps %xmm5,%xmm2
  movss  %xmm5,0x2c(%rsp)
  cvtsd2ss %xmm1,%xmm1
  addss  %xmm1,%xmm2
  movss  %xmm1,0x28(%rsp)
  cvtss2sd %xmm2,%xmm7
  mulsd  %xmm7,%xmm4
  movapd %xmm7,%xmm3
  movaps %xmm2,%xmm6
  mulsd  D95(%rip),%xmm3
  movss  %xmm2,0x1c(%rsp)
  mulss  D206(%rip),%xmm6
  movsd  %xmm7,0x20(%rsp)
  cvtsd2ss %xmm4,%xmm4
  movaps %xmm4,%xmm0
  movss  %xmm4,0x18(%rsp)
  cvtsd2ss %xmm3,%xmm3
  addss  %xmm3,%xmm0
  movss  %xmm3,0x14(%rsp)
  movss  %xmm6,0x10(%rsp)
  addss  %xmm6,%xmm0
  movss  %xmm0,0xc(%rsp)
  call   <printf@plt>
  lea    D7(%rip),%rdi
  pxor   %xmm0,%xmm0
  mov    $0x1,%eax
  cvtss2sd 0x3c(%rsp),%xmm0
  call   <printf@plt>
  pxor   %xmm0,%xmm0
  movss  0x2c(%rsp),%xmm5
  lea    D128(%rip),%rdi
  mov    $0x1,%eax
  cvtss2sd %xmm5,%xmm0
  call   <printf@plt>
  movss  0x28(%rsp),%xmm1
  lea    D61(%rip),%rdi
  pxor   %xmm0,%xmm0
  mov    $0x1,%eax
  cvtss2sd %xmm1,%xmm0
  call   <printf@plt>
  movsd  0x20(%rsp),%xmm7
  lea    D184(%rip),%rdi
  mov    $0x1,%eax
  movapd %xmm7,%xmm0
  call   <printf@plt>
  movss  0x18(%rsp),%xmm4
  pxor   %xmm0,%xmm0
  lea    D77(%rip),%rdi
  mov    $0x1,%eax
  cvtss2sd %xmm4,%xmm0
  call   <printf@plt>
  movss  0x14(%rsp),%xmm3
  lea    D225(%rip),%rdi
  pxor   %xmm0,%xmm0
  mov    $0x1,%eax
  cvtss2sd %xmm3,%xmm0
  call   <printf@plt>
  movss  0x10(%rsp),%xmm6
  lea    D189(%rip),%rdi
  pxor   %xmm0,%xmm0
  mov    $0x1,%eax
  cvtss2sd %xmm6,%xmm0
  call   <printf@plt>
  lea    D17(%rip),%rdi
  pxor   %xmm0,%xmm0
  mov    $0x1,%eax
  cvtss2sd 0xc(%rsp),%xmm0
  call   <printf@plt>
  movss  0x1c(%rsp),%xmm2
  subss  0xc(%rsp),%xmm2
  pxor   %xmm0,%xmm0
  lea    D214(%rip),%rdi
  mov    $0x1,%eax
  cvtss2sd %xmm2,%xmm0
  call   <printf@plt>
  mov    0x78(%rsp),%rax
  sub    %fs:0x28,%rax
  jne    L1
  add    $0x88,%rsp
  xor    %eax,%eax
  pop    %rbp
  pop    %r12
  pop    %r13
  pop    %r14
  ret
L1:
  call   <__stack_chk_fail@plt>
```

tool_calls: name: read_data
arguments: label: D23
type_guessed: string
name: read_data
arguments: label: D76
type_guessed: string
name: read_data
arguments: label: D50
type_guessed: string
name: read_data
arguments: label: D25
type_guessed: string
name: read_data
arguments: label: D139
type_guessed: string
name: read_data
arguments: label: D239
type_guessed: string
name: read_data
arguments: label: D152
type_guessed: string
name: read_data
arguments: label: D212
type_guessed: string
name: read_data
arguments: label: D245
type_guessed: string
name: read_data
arguments: label: D190
type_guessed: string
name: read_data
arguments: label: D70
type_guessed: byte[8]
name: read_data
arguments: label: D119
type_guessed: byte[4]
name: read_data
arguments: label: D185
type_guessed: byte[8]
name: read_data
arguments: label: D238
type_guessed: string
name: read_data
arguments: label: D91
type_guessed: byte[8]
name: read_data
arguments: label: D95
type_guessed: byte[8]
name: read_data
arguments: label: D206
type_guessed: byte[4]
name: read_data
arguments: label: D7
type_guessed: string
name: read_data
arguments: label: D128
type_guessed: string
name: read_data
arguments: label: D61
type_guessed: string
name: read_data
arguments: label: D184
type_guessed: string
name: read_data
arguments: label: D77
type_guessed: string
name: read_data
arguments: label: D225
type_guessed: string
name: read_data
arguments: label: D189
type_guessed: string
name: read_data
arguments: label: D17
type_guessed: string
name: read_data
arguments: label: D214
type_guessed: string

tool: D23: 
Enter profit for the week: 

tool: D76: %s

tool: D50: %f

tool: D25: Enter information for the employee:

tool: D139: Enter First Name: 

tool: D239: Enter Last Name: 

tool: D152: %d

tool: D212: Enter ID Number: 

tool: D245: Enter Years of Experience: 

tool: D190: Enter Sales amount: 

tool: {"D70": [0x7b,0x14,0xae,0x47,0xe1,0x7a,0x74,0x3f]}

tool: {"D119": [0x00,0x00,0x00,0x3e]}

tool: {"D185": [0x7b,0x14,0xae,0x47,0xe1,0x7a,0xb4,0x3f]}

tool: D238: 

Payroll report for %s %s, Id number %d:

tool: {"D91": [0x00,0x00,0x00,0x00,0x00,0x00,0x49,0x40]}

tool: {"D95": [0x9a,0x99,0x99,0x99,0x99,0x99,0xb9,0x3f]}

tool: {"D206": [0x00,0x00,0x80,0x3e]}

tool: D7: 
Sales:			$ %10.2f

tool: D128: 
Commission:		$ %10.2f

tool: D61: 
Bonus:			$ %10.2f

tool: D184: 
Gross Salary:		$ %10.2f

tool: D77: 
Retirement:		$ %10.2f

tool: D225: 
State Tax:		$ %10.2f

tool: D189: 
Federal Tax:		$ %10.2f

tool: D17: 
Total Deductions:	$ %10.2f

tool: D214: 
Net Salary:		$ %10.2f



assistant: ```c
int main(void) {
  float weeksProfit;
  char F_Name[21] = "";
  char L_Name[21] = "";
  int IDNum;
  int years;
  float salesAmt;
  float commission;
  float bonus;
  float grossSal;
  float retirement;
  float stateTax;
  float fedTax;
  float totalDed;
  float netSalary;
  printf("\nEnter profit for the week: ");
  scanf("%f", &weeksProfit);
  printf("Enter information for the employee:\n");
  printf("Enter First Name: ");
  scanf("%s", F_Name);
  printf("Enter Last Name: ");
  scanf("%s", L_Name);
  printf("Enter ID Number: ");
  scanf("%d", &IDNum);
  printf("Enter Years of Experience: ");
  scanf("%d", &years);
  printf("Enter Sales amount: ");
  scanf("%f", &salesAmt);
  commission = salesAmt * (12.5 / 100);
  bonus = ((float)years * (weeksProfit * (0.5 / 100))) + 50;
  grossSal = commission + bonus;
  retirement = grossSal * (8.0 / 100);
  stateTax = grossSal * (10.0 / 100);
  fedTax = grossSal * (25.0 / 100);
  totalDed = retirement + stateTax + fedTax;
  netSalary = grossSal - totalDed;
  printf("\n\nPayroll report for %s %s, Id number %d:", F_Name, L_Name, IDNum);
  printf("\nSales:\t\t\t$ %10.2f", salesAmt);
  printf("\nCommission:\t\t$ %10.2f", commission);
  printf("\nBonus:\t\t\t$ %10.2f", bonus);
  printf("\nGross Salary:\t\t$ %10.2f", grossSal);
  printf("\nRetirement:\t\t$ %10.2f", retirement);
  printf("\nState Tax:\t\t$ %10.2f", stateTax);
  printf("\nFederal Tax:\t\t$ %10.2f", fedTax);
  printf("\nTotal Deductions:\t$ %10.2f", totalDed);
  printf("\nNet Salary:\t\t$ %10.2f\n\n", netSalary);
  return 0;
}
```