user: 请从给定的汇编指令推导出C源代码:

```asm
<test>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x90,%rsp
  mov    %rdi,-0xe8(%rbp)
  mov    %rsi,-0xf0(%rbp)
  movss  %xmm0,-0xf4(%rbp)
  mov    %rdx,-0x100(%rbp)
  mov    %rcx,-0x108(%rbp)
  mov    -0x100(%rbp),%rax
  movss  (%rax),%xmm0
  movss  %xmm0,-0xd8(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x4(%rax),%xmm0
  movss  %xmm0,-0xd4(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x8(%rax),%xmm0
  movss  %xmm0,-0xd0(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0xc(%rax),%xmm0
  movss  %xmm0,-0xcc(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x10(%rax),%xmm0
  movss  %xmm0,-0xc8(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x14(%rax),%xmm0
  movss  %xmm0,-0xc4(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x18(%rax),%xmm0
  movss  %xmm0,-0xc0(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x1c(%rax),%xmm0
  movss  %xmm0,-0xbc(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x20(%rax),%xmm0
  movss  %xmm0,-0xb8(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x24(%rax),%xmm0
  movss  %xmm0,-0xb4(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x28(%rax),%xmm0
  movss  %xmm0,-0xb0(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x2c(%rax),%xmm0
  movss  %xmm0,-0xac(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x30(%rax),%xmm0
  movss  %xmm0,-0xa8(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x34(%rax),%xmm0
  movss  %xmm0,-0xa4(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x38(%rax),%xmm0
  movss  %xmm0,-0xa0(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x3c(%rax),%xmm0
  movss  %xmm0,-0x9c(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x40(%rax),%xmm0
  movss  %xmm0,-0x98(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x44(%rax),%xmm0
  movss  %xmm0,-0x94(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x48(%rax),%xmm0
  movss  %xmm0,-0x90(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x4c(%rax),%xmm0
  movss  %xmm0,-0x8c(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x50(%rax),%xmm0
  movss  %xmm0,-0x88(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x54(%rax),%xmm0
  movss  %xmm0,-0x84(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x58(%rax),%xmm0
  movss  %xmm0,-0x80(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x5c(%rax),%xmm0
  movss  %xmm0,-0x7c(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x60(%rax),%xmm0
  movss  %xmm0,-0x78(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x64(%rax),%xmm0
  movss  %xmm0,-0x74(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x68(%rax),%xmm0
  movss  %xmm0,-0x70(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x6c(%rax),%xmm0
  movss  %xmm0,-0x6c(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x70(%rax),%xmm0
  movss  %xmm0,-0x68(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x74(%rax),%xmm0
  movss  %xmm0,-0x64(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x78(%rax),%xmm0
  movss  %xmm0,-0x60(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x7c(%rax),%xmm0
  movss  %xmm0,-0x5c(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x80(%rax),%xmm0
  movss  %xmm0,-0x58(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x84(%rax),%xmm0
  movss  %xmm0,-0x54(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x88(%rax),%xmm0
  movss  %xmm0,-0x50(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x8c(%rax),%xmm0
  movss  %xmm0,-0x4c(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x90(%rax),%xmm0
  movss  %xmm0,-0x48(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x94(%rax),%xmm0
  movss  %xmm0,-0x44(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x98(%rax),%xmm0
  movss  %xmm0,-0x40(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0x9c(%rax),%xmm0
  movss  %xmm0,-0x3c(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0xa0(%rax),%xmm0
  movss  %xmm0,-0x38(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0xa4(%rax),%xmm0
  movss  %xmm0,-0x34(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0xa8(%rax),%xmm0
  movss  %xmm0,-0x30(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0xac(%rax),%xmm0
  movss  %xmm0,-0x2c(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0xb0(%rax),%xmm0
  movss  %xmm0,-0x28(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0xb4(%rax),%xmm0
  movss  %xmm0,-0x24(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0xb8(%rax),%xmm0
  movss  %xmm0,-0x20(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0xbc(%rax),%xmm0
  movss  %xmm0,-0x1c(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0xc0(%rax),%xmm0
  movss  %xmm0,-0x18(%rbp)
  mov    -0x100(%rbp),%rax
  movss  0xc4(%rax),%xmm0
  movss  %xmm0,-0x14(%rbp)
  movq   $0x0,-0x10(%rbp)
  jmp    L310
L145:
  mov    -0x10(%rbp),%rax
  lea    0x0(,%rax,8),%rdx
  mov    -0xe8(%rbp),%rax
  add    %rdx,%rax
  mov    (%rax),%rax
  mov    %rax,-0x8(%rbp)
  mov    -0x8(%rbp),%rax
  and    $0x1,%eax
  test   %rax,%rax
  je     L302
  movss  -0xd8(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xd8(%rbp)
L302:
  mov    -0x8(%rbp),%rax
  and    $0x2,%eax
  test   %rax,%rax
  je     L26
  movss  -0xd4(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xd4(%rbp)
L26:
  mov    -0x8(%rbp),%rax
  and    $0x4,%eax
  test   %rax,%rax
  je     L176
  movss  -0xd0(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xd0(%rbp)
L176:
  mov    -0x8(%rbp),%rax
  and    $0x8,%eax
  test   %rax,%rax
  je     L29
  movss  -0xcc(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xcc(%rbp)
L29:
  mov    -0x8(%rbp),%rax
  and    $0x10,%eax
  test   %rax,%rax
  je     L66
  movss  -0xc8(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xc8(%rbp)
L66:
  mov    -0x8(%rbp),%rax
  and    $0x20,%eax
  test   %rax,%rax
  je     L290
  movss  -0xc4(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xc4(%rbp)
L290:
  mov    -0x8(%rbp),%rax
  and    $0x40,%eax
  test   %rax,%rax
  je     L447
  movss  -0xc0(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xc0(%rbp)
L447:
  mov    -0x8(%rbp),%rax
  and    $0x80,%eax
  test   %rax,%rax
  je     L277
  movss  -0xbc(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xbc(%rbp)
L277:
  mov    -0x8(%rbp),%rax
  and    $0x100,%eax
  test   %rax,%rax
  je     L324
  movss  -0xb8(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xb8(%rbp)
L324:
  mov    -0x8(%rbp),%rax
  and    $0x200,%eax
  test   %rax,%rax
  je     L112
  movss  -0xb4(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xb4(%rbp)
L112:
  mov    -0x8(%rbp),%rax
  and    $0x400,%eax
  test   %rax,%rax
  je     L1
  movss  -0xb0(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xb0(%rbp)
L1:
  mov    -0x8(%rbp),%rax
  and    $0x800,%eax
  test   %rax,%rax
  je     L209
  movss  -0xac(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xac(%rbp)
L209:
  mov    -0x8(%rbp),%rax
  and    $0x1000,%eax
  test   %rax,%rax
  je     L167
  movss  -0xa8(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xa8(%rbp)
L167:
  mov    -0x8(%rbp),%rax
  and    $0x2000,%eax
  test   %rax,%rax
  je     L411
  movss  -0xa4(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xa4(%rbp)
L411:
  mov    -0x8(%rbp),%rax
  and    $0x4000,%eax
  test   %rax,%rax
  je     L483
  movss  -0xa0(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xa0(%rbp)
L483:
  mov    -0x8(%rbp),%rax
  and    $0x8000,%eax
  test   %rax,%rax
  je     L56
  movss  -0x9c(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x9c(%rbp)
L56:
  mov    -0x8(%rbp),%rax
  and    $0x10000,%eax
  test   %rax,%rax
  je     L23
  movss  -0x98(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
L23:
  mov    -0x8(%rbp),%rax
  and    $0x20000,%eax
  test   %rax,%rax
  je     L372
  movss  -0x94(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x94(%rbp)
L372:
  mov    -0x8(%rbp),%rax
  and    $0x40000,%eax
  test   %rax,%rax
  je     L368
  movss  -0x90(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x90(%rbp)
L368:
  mov    -0x8(%rbp),%rax
  and    $0x80000,%eax
  test   %rax,%rax
  je     L333
  movss  -0x8c(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x8c(%rbp)
L333:
  mov    -0x8(%rbp),%rax
  and    $0x100000,%eax
  test   %rax,%rax
  je     L433
  movss  -0x88(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x88(%rbp)
L433:
  mov    -0x8(%rbp),%rax
  and    $0x200000,%eax
  test   %rax,%rax
  je     L156
  movss  -0x84(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x84(%rbp)
L156:
  mov    -0x8(%rbp),%rax
  and    $0x400000,%eax
  test   %rax,%rax
  je     L190
  movss  -0x80(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x80(%rbp)
L190:
  mov    -0x8(%rbp),%rax
  and    $0x800000,%eax
  test   %rax,%rax
  je     L366
  movss  -0x7c(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x7c(%rbp)
L366:
  mov    -0x8(%rbp),%rax
  and    $0x1000000,%eax
  test   %rax,%rax
  je     L516
  movss  -0x78(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x78(%rbp)
L516:
  mov    -0x8(%rbp),%rax
  and    $0x2000000,%eax
  test   %rax,%rax
  je     L426
  movss  -0x74(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x74(%rbp)
L426:
  mov    -0x8(%rbp),%rax
  and    $0x4000000,%eax
  test   %rax,%rax
  je     L133
  movss  -0x70(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x70(%rbp)
L133:
  mov    -0x8(%rbp),%rax
  and    $0x8000000,%eax
  test   %rax,%rax
  je     L187
  movss  -0x6c(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x6c(%rbp)
L187:
  mov    -0x8(%rbp),%rax
  and    $0x10000000,%eax
  test   %rax,%rax
  je     L256
  movss  -0x68(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x68(%rbp)
L256:
  mov    -0x8(%rbp),%rax
  and    $0x20000000,%eax
  test   %rax,%rax
  je     L38
  movss  -0x64(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x64(%rbp)
L38:
  mov    -0x8(%rbp),%rax
  and    $0x40000000,%eax
  test   %rax,%rax
  je     L299
  movss  -0x60(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x60(%rbp)
L299:
  mov    -0x8(%rbp),%rax
  and    $0x80000000,%eax
  test   %rax,%rax
  je     L246
  movss  -0x5c(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x5c(%rbp)
L246:
  movabs $0x100000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L3
  movss  -0x58(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x58(%rbp)
L3:
  movabs $0x200000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L43
  movss  -0x54(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x54(%rbp)
L43:
  movabs $0x400000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L154
  movss  -0x50(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x50(%rbp)
L154:
  movabs $0x800000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L55
  movss  -0x4c(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x4c(%rbp)
L55:
  movabs $0x1000000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L282
  movss  -0x48(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x48(%rbp)
L282:
  movabs $0x2000000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L89
  movss  -0x44(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x44(%rbp)
L89:
  movabs $0x4000000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L20
  movss  -0x40(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x40(%rbp)
L20:
  movabs $0x8000000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L99
  movss  -0x3c(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x3c(%rbp)
L99:
  movabs $0x10000000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L472
  movss  -0x38(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x38(%rbp)
L472:
  movabs $0x20000000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L265
  movss  -0x34(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x34(%rbp)
L265:
  movabs $0x40000000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L263
  movss  -0x30(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x30(%rbp)
L263:
  movabs $0x80000000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L218
  movss  -0x2c(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x2c(%rbp)
L218:
  movabs $0x100000000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L296
  movss  -0x28(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x28(%rbp)
L296:
  movabs $0x200000000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L437
  movss  -0x24(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x24(%rbp)
L437:
  movabs $0x400000000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L7
  movss  -0x20(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x20(%rbp)
L7:
  movabs $0x800000000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L384
  movss  -0x1c(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x1c(%rbp)
L384:
  movabs $0x1000000000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L15
  movss  -0x18(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x18(%rbp)
L15:
  movabs $0x2000000000000,%rax
  and    -0x8(%rbp),%rax
  test   %rax,%rax
  je     L362
  movss  -0x14(%rbp),%xmm0
  addss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0x14(%rbp)
L362:
  addq   $0x1,-0x10(%rbp)
L310:
  mov    -0x10(%rbp),%rax
  cmp    -0xf0(%rbp),%rax
  jl     L145
  mov    -0x108(%rbp),%rax
  movss  -0xd8(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x4,%rax
  movss  -0xd4(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x8,%rax
  movss  -0xd0(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0xc,%rax
  movss  -0xcc(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x10,%rax
  movss  -0xc8(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x14,%rax
  movss  -0xc4(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x18,%rax
  movss  -0xc0(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x1c,%rax
  movss  -0xbc(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x20,%rax
  movss  -0xb8(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x24,%rax
  movss  -0xb4(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x28,%rax
  movss  -0xb0(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x2c,%rax
  movss  -0xac(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x30,%rax
  movss  -0xa8(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x34,%rax
  movss  -0xa4(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x38,%rax
  movss  -0xa0(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x3c,%rax
  movss  -0x9c(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x40,%rax
  movss  -0x98(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x44,%rax
  movss  -0x94(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x48,%rax
  movss  -0x90(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x4c,%rax
  movss  -0x8c(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x50,%rax
  movss  -0x88(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x54,%rax
  movss  -0x84(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x58,%rax
  movss  -0x80(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x5c,%rax
  movss  -0x7c(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x60,%rax
  movss  -0x78(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x64,%rax
  movss  -0x74(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x68,%rax
  movss  -0x70(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x6c,%rax
  movss  -0x6c(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x70,%rax
  movss  -0x68(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x74,%rax
  movss  -0x64(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x78,%rax
  movss  -0x60(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x7c,%rax
  movss  -0x5c(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  sub    $0xffffffffffffff80,%rax
  movss  -0x58(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x84,%rax
  movss  -0x54(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x88,%rax
  movss  -0x50(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x8c,%rax
  movss  -0x4c(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x90,%rax
  movss  -0x48(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x94,%rax
  movss  -0x44(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x98,%rax
  movss  -0x40(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0x9c,%rax
  movss  -0x3c(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0xa0,%rax
  movss  -0x38(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0xa4,%rax
  movss  -0x34(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0xa8,%rax
  movss  -0x30(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0xac,%rax
  movss  -0x2c(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0xb0,%rax
  movss  -0x28(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0xb4,%rax
  movss  -0x24(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0xb8,%rax
  movss  -0x20(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0xbc,%rax
  movss  -0x1c(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0xc0,%rax
  movss  -0x18(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x108(%rbp),%rax
  add    $0xc4,%rax
  movss  -0x14(%rbp),%xmm0
  movss  %xmm0,(%rax)
  nop
  leave
  ret
```

assistant: ```c
void test(long int *bits, long int n, float one, float *p, float *q) {
  float x_00 = p[0];
  float x_01 = p[1];
  float x_02 = p[2];
  float x_03 = p[3];
  float x_04 = p[4];
  float x_05 = p[5];
  float x_06 = p[6];
  float x_07 = p[7];
  float x_08 = p[8];
  float x_09 = p[9];
  float x_10 = p[10];
  float x_11 = p[11];
  float x_12 = p[12];
  float x_13 = p[13];
  float x_14 = p[14];
  float x_15 = p[15];
  float x_16 = p[16];
  float x_17 = p[17];
  float x_18 = p[18];
  float x_19 = p[19];
  float x_20 = p[20];
  float x_21 = p[21];
  float x_22 = p[22];
  float x_23 = p[23];
  float x_24 = p[24];
  float x_25 = p[25];
  float x_26 = p[26];
  float x_27 = p[27];
  float x_28 = p[28];
  float x_29 = p[29];
  float x_30 = p[30];
  float x_31 = p[31];
  float x_32 = p[32];
  float x_33 = p[33];
  float x_34 = p[34];
  float x_35 = p[35];
  float x_36 = p[36];
  float x_37 = p[37];
  float x_38 = p[38];
  float x_39 = p[39];
  float x_40 = p[40];
  float x_41 = p[41];
  float x_42 = p[42];
  float x_43 = p[43];
  float x_44 = p[44];
  float x_45 = p[45];
  float x_46 = p[46];
  float x_47 = p[47];
  float x_48 = p[48];
  float x_49 = p[49];
  long int i;
  for (i = 0; i < n; i++) {
    long int bit = (bits[i]);
    if ((bit & ((long int)1) << 0) != 0)
      x_00 += one;
    if ((bit & ((long int)1) << 1) != 0)
      x_01 += one;
    if ((bit & ((long int)1) << 2) != 0)
      x_02 += one;
    if ((bit & ((long int)1) << 3) != 0)
      x_03 += one;
    if ((bit & ((long int)1) << 4) != 0)
      x_04 += one;
    if ((bit & ((long int)1) << 5) != 0)
      x_05 += one;
    if ((bit & ((long int)1) << 6) != 0)
      x_06 += one;
    if ((bit & ((long int)1) << 7) != 0)
      x_07 += one;
    if ((bit & ((long int)1) << 8) != 0)
      x_08 += one;
    if ((bit & ((long int)1) << 9) != 0)
      x_09 += one;
    if ((bit & ((long int)1) << 10) != 0)
      x_10 += one;
    if ((bit & ((long int)1) << 11) != 0)
      x_11 += one;
    if ((bit & ((long int)1) << 12) != 0)
      x_12 += one;
    if ((bit & ((long int)1) << 13) != 0)
      x_13 += one;
    if ((bit & ((long int)1) << 14) != 0)
      x_14 += one;
    if ((bit & ((long int)1) << 15) != 0)
      x_15 += one;
    if ((bit & ((long int)1) << 16) != 0)
      x_16 += one;
    if ((bit & ((long int)1) << 17) != 0)
      x_17 += one;
    if ((bit & ((long int)1) << 18) != 0)
      x_18 += one;
    if ((bit & ((long int)1) << 19) != 0)
      x_19 += one;
    if ((bit & ((long int)1) << 20) != 0)
      x_20 += one;
    if ((bit & ((long int)1) << 21) != 0)
      x_21 += one;
    if ((bit & ((long int)1) << 22) != 0)
      x_22 += one;
    if ((bit & ((long int)1) << 23) != 0)
      x_23 += one;
    if ((bit & ((long int)1) << 24) != 0)
      x_24 += one;
    if ((bit & ((long int)1) << 25) != 0)
      x_25 += one;
    if ((bit & ((long int)1) << 26) != 0)
      x_26 += one;
    if ((bit & ((long int)1) << 27) != 0)
      x_27 += one;
    if ((bit & ((long int)1) << 28) != 0)
      x_28 += one;
    if ((bit & ((long int)1) << 29) != 0)
      x_29 += one;
    if ((bit & ((long int)1) << 30) != 0)
      x_30 += one;
    if ((bit & ((long int)1) << 31) != 0)
      x_31 += one;
    if ((bit & ((long int)1) << 32) != 0)
      x_32 += one;
    if ((bit & ((long int)1) << 33) != 0)
      x_33 += one;
    if ((bit & ((long int)1) << 34) != 0)
      x_34 += one;
    if ((bit & ((long int)1) << 35) != 0)
      x_35 += one;
    if ((bit & ((long int)1) << 36) != 0)
      x_36 += one;
    if ((bit & ((long int)1) << 37) != 0)
      x_37 += one;
    if ((bit & ((long int)1) << 38) != 0)
      x_38 += one;
    if ((bit & ((long int)1) << 39) != 0)
      x_39 += one;
    if ((bit & ((long int)1) << 40) != 0)
      x_40 += one;
    if ((bit & ((long int)1) << 41) != 0)
      x_41 += one;
    if ((bit & ((long int)1) << 42) != 0)
      x_42 += one;
    if ((bit & ((long int)1) << 43) != 0)
      x_43 += one;
    if ((bit & ((long int)1) << 44) != 0)
      x_44 += one;
    if ((bit & ((long int)1) << 45) != 0)
      x_45 += one;
    if ((bit & ((long int)1) << 46) != 0)
      x_46 += one;
    if ((bit & ((long int)1) << 47) != 0)
      x_47 += one;
    if ((bit & ((long int)1) << 48) != 0)
      x_48 += one;
    if ((bit & ((long int)1) << 49) != 0)
      x_49 += one;
  }
  q[0] = x_00;
  q[1] = x_01;
  q[2] = x_02;
  q[3] = x_03;
  q[4] = x_04;
  q[5] = x_05;
  q[6] = x_06;
  q[7] = x_07;
  q[8] = x_08;
  q[9] = x_09;
  q[10] = x_10;
  q[11] = x_11;
  q[12] = x_12;
  q[13] = x_13;
  q[14] = x_14;
  q[15] = x_15;
  q[16] = x_16;
  q[17] = x_17;
  q[18] = x_18;
  q[19] = x_19;
  q[20] = x_20;
  q[21] = x_21;
  q[22] = x_22;
  q[23] = x_23;
  q[24] = x_24;
  q[25] = x_25;
  q[26] = x_26;
  q[27] = x_27;
  q[28] = x_28;
  q[29] = x_29;
  q[30] = x_30;
  q[31] = x_31;
  q[32] = x_32;
  q[33] = x_33;
  q[34] = x_34;
  q[35] = x_35;
  q[36] = x_36;
  q[37] = x_37;
  q[38] = x_38;
  q[39] = x_39;
  q[40] = x_40;
  q[41] = x_41;
  q[42] = x_42;
  q[43] = x_43;
  q[44] = x_44;
  q[45] = x_45;
  q[46] = x_46;
  q[47] = x_47;
  q[48] = x_48;
  q[49] = x_49;
}
```