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

```asm
<hFuncRefC>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x130,%rsp
  mov    %rdi,-0x128(%rbp)
  mov    %rsi,-0x130(%rbp)
  mov    %fs:0x28,%rax
  mov    %rax,-0x8(%rbp)
  xor    %eax,%eax
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0x118(%rbp)
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0x114(%rbp)
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0x110(%rbp)
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0x10c(%rbp)
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0x108(%rbp)
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0x104(%rbp)
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0x100(%rbp)
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0xfc(%rbp)
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0xf8(%rbp)
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0xf4(%rbp)
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0xf0(%rbp)
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0xec(%rbp)
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0xe8(%rbp)
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0xe4(%rbp)
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0xe0(%rbp)
  mov    -0x128(%rbp),%rax
  lea    0x4(%rax),%rdx
  mov    %rdx,-0x128(%rbp)
  movss  (%rax),%xmm0
  movss  %xmm0,-0xdc(%rbp)
  movss  -0x118(%rbp),%xmm0
  mulss  -0xf8(%rbp),%xmm0
  movss  %xmm0,-0xd8(%rbp)
  movss  -0x110(%rbp),%xmm0
  mulss  -0xf0(%rbp),%xmm0
  movss  %xmm0,-0xd4(%rbp)
  movss  -0x108(%rbp),%xmm0
  mulss  -0xe8(%rbp),%xmm0
  movss  %xmm0,-0xd0(%rbp)
  movss  -0x100(%rbp),%xmm0
  mulss  -0xe0(%rbp),%xmm0
  movss  %xmm0,-0xcc(%rbp)
  movss  -0x118(%rbp),%xmm0
  mulss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xc8(%rbp)
  movss  -0x110(%rbp),%xmm0
  mulss  -0xec(%rbp),%xmm0
  movss  %xmm0,-0xc4(%rbp)
  movss  -0x108(%rbp),%xmm0
  mulss  -0xe4(%rbp),%xmm0
  movss  %xmm0,-0xc0(%rbp)
  movss  -0x100(%rbp),%xmm0
  mulss  -0xdc(%rbp),%xmm0
  movss  %xmm0,-0xbc(%rbp)
  movss  -0x114(%rbp),%xmm0
  mulss  -0xf8(%rbp),%xmm0
  movss  %xmm0,-0xb8(%rbp)
  movss  -0x10c(%rbp),%xmm0
  mulss  -0xf0(%rbp),%xmm0
  movss  %xmm0,-0xb4(%rbp)
  movss  -0x104(%rbp),%xmm0
  mulss  -0xe8(%rbp),%xmm0
  movss  %xmm0,-0xb0(%rbp)
  movss  -0xfc(%rbp),%xmm0
  mulss  -0xe0(%rbp),%xmm0
  movss  %xmm0,-0xac(%rbp)
  movss  -0x114(%rbp),%xmm0
  mulss  -0xf4(%rbp),%xmm0
  movss  %xmm0,-0xa8(%rbp)
  movss  -0x10c(%rbp),%xmm0
  mulss  -0xec(%rbp),%xmm0
  movss  %xmm0,-0xa4(%rbp)
  movss  -0x104(%rbp),%xmm0
  mulss  -0xe4(%rbp),%xmm0
  movss  %xmm0,-0xa0(%rbp)
  movss  -0xfc(%rbp),%xmm0
  mulss  -0xdc(%rbp),%xmm0
  movss  %xmm0,-0x9c(%rbp)
  movss  -0x118(%rbp),%xmm0
  subss  -0x108(%rbp),%xmm0
  movss  %xmm0,-0x90(%rbp)
  movss  -0x114(%rbp),%xmm0
  subss  -0x104(%rbp),%xmm0
  movss  %xmm0,-0x8c(%rbp)
  movss  -0x110(%rbp),%xmm0
  subss  -0x108(%rbp),%xmm0
  movss  %xmm0,-0x88(%rbp)
  movss  -0x10c(%rbp),%xmm0
  subss  -0x104(%rbp),%xmm0
  movss  %xmm0,-0x84(%rbp)
  movss  -0x108(%rbp),%xmm0
  movss  %xmm0,-0x80(%rbp)
  movss  -0x104(%rbp),%xmm0
  movss  %xmm0,-0x7c(%rbp)
  movss  -0x100(%rbp),%xmm0
  subss  -0x108(%rbp),%xmm0
  movss  %xmm0,-0x78(%rbp)
  movss  -0xfc(%rbp),%xmm0
  subss  -0x104(%rbp),%xmm0
  movss  %xmm0,-0x74(%rbp)
  movss  -0xd0(%rbp),%xmm0
  subss  -0xd8(%rbp),%xmm0
  movss  %xmm0,-0x70(%rbp)
  movss  -0xb0(%rbp),%xmm0
  subss  -0xb8(%rbp),%xmm0
  movss  %xmm0,-0x6c(%rbp)
  movss  -0xf8(%rbp),%xmm0
  subss  -0xe8(%rbp),%xmm0
  movss  %xmm0,-0x68(%rbp)
  movss  -0xd0(%rbp),%xmm0
  subss  -0xd4(%rbp),%xmm0
  movss  %xmm0,-0x64(%rbp)
  movss  -0xb0(%rbp),%xmm0
  subss  -0xb4(%rbp),%xmm0
  movss  %xmm0,-0x60(%rbp)
  movss  -0xf0(%rbp),%xmm0
  subss  -0xe8(%rbp),%xmm0
  movss  %xmm0,-0x5c(%rbp)
  movss  -0xd0(%rbp),%xmm0
  movss  D45(%rip),%xmm1
  xorps  %xmm1,%xmm0
  movss  %xmm0,-0x58(%rbp)
  movss  -0xb0(%rbp),%xmm0
  movss  D45(%rip),%xmm1
  xorps  %xmm1,%xmm0
  movss  %xmm0,-0x54(%rbp)
  movss  -0xe8(%rbp),%xmm0
  movss  %xmm0,-0x50(%rbp)
  movss  -0xd0(%rbp),%xmm0
  subss  -0xcc(%rbp),%xmm0
  movss  %xmm0,-0x4c(%rbp)
  movss  -0xb0(%rbp),%xmm0
  subss  -0xac(%rbp),%xmm0
  movss  %xmm0,-0x48(%rbp)
  movss  -0xe0(%rbp),%xmm0
  subss  -0xe8(%rbp),%xmm0
  movss  %xmm0,-0x44(%rbp)
  movss  -0xc0(%rbp),%xmm0
  subss  -0xc8(%rbp),%xmm0
  movss  %xmm0,-0x40(%rbp)
  movss  -0xa0(%rbp),%xmm0
  subss  -0xa8(%rbp),%xmm0
  movss  %xmm0,-0x3c(%rbp)
  movss  -0xf4(%rbp),%xmm0
  subss  -0xe4(%rbp),%xmm0
  movss  %xmm0,-0x38(%rbp)
  movss  -0xc0(%rbp),%xmm0
  subss  -0xc4(%rbp),%xmm0
  movss  %xmm0,-0x34(%rbp)
  movss  -0xa0(%rbp),%xmm0
  subss  -0xa4(%rbp),%xmm0
  movss  %xmm0,-0x30(%rbp)
  movss  -0xec(%rbp),%xmm0
  subss  -0xe4(%rbp),%xmm0
  movss  %xmm0,-0x2c(%rbp)
  movss  -0xc0(%rbp),%xmm0
  movss  D45(%rip),%xmm1
  xorps  %xmm1,%xmm0
  movss  %xmm0,-0x28(%rbp)
  movss  -0xa0(%rbp),%xmm0
  movss  D45(%rip),%xmm1
  xorps  %xmm1,%xmm0
  movss  %xmm0,-0x24(%rbp)
  movss  -0xe4(%rbp),%xmm0
  movss  %xmm0,-0x20(%rbp)
  movss  -0xc0(%rbp),%xmm0
  subss  -0xbc(%rbp),%xmm0
  movss  %xmm0,-0x1c(%rbp)
  movss  -0xa0(%rbp),%xmm0
  subss  -0x9c(%rbp),%xmm0
  movss  %xmm0,-0x18(%rbp)
  movss  -0xdc(%rbp),%xmm0
  subss  -0xe4(%rbp),%xmm0
  movss  %xmm0,-0x14(%rbp)
  movss  -0x90(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x88(%rbp),%xmm0
  movss  %xmm0,-0x94(%rbp)
  movss  -0x84(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x8c(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x84(%rbp)
  movss  -0x64(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x70(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x64(%rbp)
  movss  -0x60(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x6c(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x60(%rbp)
  movss  -0x5c(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x68(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x5c(%rbp)
  movss  -0x34(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x40(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x34(%rbp)
  movss  -0x30(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x3c(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x30(%rbp)
  movss  -0x2c(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x38(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x2c(%rbp)
  movss  -0x78(%rbp),%xmm0
  movss  %xmm0,-0x94(%rbp)
  movss  -0x74(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x8c(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x74(%rbp)
  movss  -0x4c(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x70(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x4c(%rbp)
  movss  -0x48(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x6c(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x48(%rbp)
  movss  -0x44(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x68(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x44(%rbp)
  movss  -0x1c(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x40(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x1c(%rbp)
  movss  -0x18(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x3c(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x18(%rbp)
  movss  -0x14(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x38(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x14(%rbp)
  movss  -0x84(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x74(%rbp),%xmm0
  movss  %xmm0,-0x94(%rbp)
  movss  -0x4c(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x64(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x4c(%rbp)
  movss  -0x48(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x60(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x48(%rbp)
  movss  -0x44(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x5c(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x44(%rbp)
  movss  -0x1c(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x34(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x1c(%rbp)
  movss  -0x18(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x30(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x18(%rbp)
  movss  -0x14(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x2c(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x14(%rbp)
  movss  -0x8c(%rbp),%xmm0
  movss  %xmm0,-0x94(%rbp)
  movss  -0x90(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x88(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x90(%rbp)
  movss  -0x70(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x64(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x70(%rbp)
  movss  -0x6c(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x60(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x6c(%rbp)
  movss  -0x68(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x5c(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x68(%rbp)
  movss  -0x40(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x34(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x40(%rbp)
  movss  -0x3c(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x30(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x3c(%rbp)
  movss  -0x38(%rbp),%xmm0
  mulss  -0x98(%rbp),%xmm0
  movss  -0x2c(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x38(%rbp)
  movss  -0x90(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x70(%rbp),%xmm0
  divss  -0x98(%rbp),%xmm0
  movss  %xmm0,-0x70(%rbp)
  movss  -0x6c(%rbp),%xmm0
  divss  -0x98(%rbp),%xmm0
  movss  %xmm0,-0x6c(%rbp)
  movss  -0x68(%rbp),%xmm0
  divss  -0x98(%rbp),%xmm0
  movss  %xmm0,-0x68(%rbp)
  movss  -0x40(%rbp),%xmm0
  divss  -0x98(%rbp),%xmm0
  movss  %xmm0,-0x40(%rbp)
  movss  -0x3c(%rbp),%xmm0
  divss  -0x98(%rbp),%xmm0
  movss  %xmm0,-0x3c(%rbp)
  movss  -0x38(%rbp),%xmm0
  divss  -0x98(%rbp),%xmm0
  movss  %xmm0,-0x38(%rbp)
  movss  -0x84(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x64(%rbp),%xmm0
  divss  -0x98(%rbp),%xmm0
  movss  %xmm0,-0x64(%rbp)
  movss  -0x60(%rbp),%xmm0
  divss  -0x98(%rbp),%xmm0
  movss  %xmm0,-0x60(%rbp)
  movss  -0x5c(%rbp),%xmm0
  divss  -0x98(%rbp),%xmm0
  movss  %xmm0,-0x5c(%rbp)
  movss  -0x34(%rbp),%xmm0
  divss  -0x98(%rbp),%xmm0
  movss  %xmm0,-0x34(%rbp)
  movss  -0x30(%rbp),%xmm0
  divss  -0x98(%rbp),%xmm0
  movss  %xmm0,-0x30(%rbp)
  movss  -0x2c(%rbp),%xmm0
  divss  -0x98(%rbp),%xmm0
  movss  %xmm0,-0x2c(%rbp)
  movss  -0x80(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x7c(%rbp),%xmm0
  movss  %xmm0,-0x94(%rbp)
  movss  -0x58(%rbp),%xmm0
  movss  -0x70(%rbp),%xmm1
  movaps %xmm1,%xmm2
  mulss  -0x98(%rbp),%xmm2
  movss  -0x64(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  addss  %xmm2,%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x58(%rbp)
  movss  -0x54(%rbp),%xmm0
  movss  -0x6c(%rbp),%xmm1
  movaps %xmm1,%xmm2
  mulss  -0x98(%rbp),%xmm2
  movss  -0x60(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  addss  %xmm2,%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x54(%rbp)
  movss  -0x50(%rbp),%xmm0
  movss  -0x68(%rbp),%xmm1
  movaps %xmm1,%xmm2
  mulss  -0x98(%rbp),%xmm2
  movss  -0x5c(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  addss  %xmm2,%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x50(%rbp)
  movss  -0x28(%rbp),%xmm0
  movss  -0x40(%rbp),%xmm1
  movaps %xmm1,%xmm2
  mulss  -0x98(%rbp),%xmm2
  movss  -0x34(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  addss  %xmm2,%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x28(%rbp)
  movss  -0x24(%rbp),%xmm0
  movss  -0x3c(%rbp),%xmm1
  movaps %xmm1,%xmm2
  mulss  -0x98(%rbp),%xmm2
  movss  -0x30(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  addss  %xmm2,%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x24(%rbp)
  movss  -0x20(%rbp),%xmm0
  movss  -0x38(%rbp),%xmm1
  movaps %xmm1,%xmm2
  mulss  -0x98(%rbp),%xmm2
  movss  -0x2c(%rbp),%xmm1
  mulss  -0x94(%rbp),%xmm1
  addss  %xmm2,%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x20(%rbp)
  movss  -0x1c(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x18(%rbp),%xmm0
  divss  -0x98(%rbp),%xmm0
  movss  %xmm0,-0x18(%rbp)
  movss  -0x14(%rbp),%xmm0
  divss  -0x98(%rbp),%xmm0
  movss  %xmm0,-0x14(%rbp)
  movss  -0x70(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x6c(%rbp),%xmm0
  movss  -0x18(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x6c(%rbp)
  movss  -0x68(%rbp),%xmm0
  movss  -0x14(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x68(%rbp)
  movss  -0x64(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x60(%rbp),%xmm0
  movss  -0x18(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x60(%rbp)
  movss  -0x5c(%rbp),%xmm0
  movss  -0x14(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x5c(%rbp)
  movss  -0x58(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x54(%rbp),%xmm0
  movss  -0x18(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x54(%rbp)
  movss  -0x50(%rbp),%xmm0
  movss  -0x14(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x50(%rbp)
  movss  -0x4c(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x48(%rbp),%xmm0
  movss  -0x18(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x48(%rbp)
  movss  -0x44(%rbp),%xmm0
  movss  -0x14(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x44(%rbp)
  movss  -0x40(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x3c(%rbp),%xmm0
  movss  -0x18(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x3c(%rbp)
  movss  -0x38(%rbp),%xmm0
  movss  -0x14(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x38(%rbp)
  movss  -0x34(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x30(%rbp),%xmm0
  movss  -0x18(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x30(%rbp)
  movss  -0x2c(%rbp),%xmm0
  movss  -0x14(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x2c(%rbp)
  movss  -0x28(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x24(%rbp),%xmm0
  movss  -0x18(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x24(%rbp)
  movss  -0x20(%rbp),%xmm0
  movss  -0x14(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x20(%rbp)
  movss  -0x48(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x44(%rbp),%xmm0
  divss  -0x98(%rbp),%xmm0
  movss  %xmm0,-0x44(%rbp)
  movss  -0x6c(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x68(%rbp),%xmm0
  movss  -0x44(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x68(%rbp)
  movss  -0x60(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x5c(%rbp),%xmm0
  movss  -0x44(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x5c(%rbp)
  movss  -0x54(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x50(%rbp),%xmm0
  movss  -0x44(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x50(%rbp)
  movss  -0x3c(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x38(%rbp),%xmm0
  movss  -0x44(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x38(%rbp)
  movss  -0x30(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x2c(%rbp),%xmm0
  movss  -0x44(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x2c(%rbp)
  movss  -0x24(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x20(%rbp),%xmm0
  movss  -0x44(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x20(%rbp)
  movss  -0x18(%rbp),%xmm0
  movss  %xmm0,-0x98(%rbp)
  movss  -0x14(%rbp),%xmm0
  movss  -0x44(%rbp),%xmm1
  mulss  -0x98(%rbp),%xmm1
  subss  %xmm1,%xmm0
  movss  %xmm0,-0x14(%rbp)
  movss  -0x68(%rbp),%xmm0
  mov    -0x130(%rbp),%rax
  movss  %xmm0,(%rax)
  mov    -0x130(%rbp),%rax
  add    $0x4,%rax
  movss  -0x5c(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x130(%rbp),%rax
  add    $0x8,%rax
  movss  -0x50(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x130(%rbp),%rax
  add    $0x10,%rax
  movss  -0x38(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x130(%rbp),%rax
  add    $0x14,%rax
  movss  -0x2c(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x130(%rbp),%rax
  add    $0x18,%rax
  movss  -0x20(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x130(%rbp),%rax
  add    $0x20,%rax
  movss  -0x14(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x130(%rbp),%rax
  add    $0x24,%rax
  movss  -0x44(%rbp),%xmm0
  movss  %xmm0,(%rax)
  mov    -0x130(%rbp),%rax
  add    $0x28,%rax
  movss  D35(%rip),%xmm0
  movss  %xmm0,(%rax)
  nop
  mov    -0x8(%rbp),%rax
  sub    %fs:0x28,%rax
  je     L9
  call   <__stack_chk_fail@plt>
L9:
  leave
  ret
```

tool_calls: name: disassemble_data
arguments: data_label: D45
type_guessed: byte[4]
name: disassemble_data
arguments: data_label: D35
type_guessed: f32

tool: {"D45": [0x00,0x00,0x00,0x80]}

tool: D35: 1

assistant: ```c
void hFuncRefC(float *packedPoints, float *H) {
  float x0 = *packedPoints++;
  float y0 = *packedPoints++;
  float x1 = *packedPoints++;
  float y1 = *packedPoints++;
  float x2 = *packedPoints++;
  float y2 = *packedPoints++;
  float x3 = *packedPoints++;
  float y3 = *packedPoints++;
  float X0 = *packedPoints++;
  float Y0 = *packedPoints++;
  float X1 = *packedPoints++;
  float Y1 = *packedPoints++;
  float X2 = *packedPoints++;
  float Y2 = *packedPoints++;
  float X3 = *packedPoints++;
  float Y3 = *packedPoints++;
  float x0X0 = x0 * X0, x1X1 = x1 * X1, x2X2 = x2 * X2, x3X3 = x3 * X3;
  float x0Y0 = x0 * Y0, x1Y1 = x1 * Y1, x2Y2 = x2 * Y2, x3Y3 = x3 * Y3;
  float y0X0 = y0 * X0, y1X1 = y1 * X1, y2X2 = y2 * X2, y3X3 = y3 * X3;
  float y0Y0 = y0 * Y0, y1Y1 = y1 * Y1, y2Y2 = y2 * Y2, y3Y3 = y3 * Y3;
  float minor[4][2] = {{x0 - x2, y0 - y2}, {x1 - x2, y1 - y2}, {x2, y2}, {x3 - x2, y3 - y2}};
  float major[8][3] = {{x2X2 - x0X0, y2X2 - y0X0, (X0 - X2)}, {x2X2 - x1X1, y2X2 - y1X1, (X1 - X2)}, {-x2X2, -y2X2, (X2)}, {x2X2 - x3X3, y2X2 - y3X3, (X3 - X2)}, {x2Y2 - x0Y0, y2Y2 - y0Y0, (Y0 - Y2)}, {x2Y2 - x1Y1, y2Y2 - y1Y1, (Y1 - Y2)}, {-x2Y2, -y2Y2, (Y2)}, {x2Y2 - x3Y3, y2Y2 - y3Y3, (Y3 - Y2)}};
  float scalar1 = minor[0][0], scalar2 = minor[1][0];
  minor[1][1] = minor[1][1] * scalar1 - minor[0][1] * scalar2;
  major[1][0] = major[1][0] * scalar1 - major[0][0] * scalar2;
  major[1][1] = major[1][1] * scalar1 - major[0][1] * scalar2;
  major[1][2] = major[1][2] * scalar1 - major[0][2] * scalar2;
  major[5][0] = major[5][0] * scalar1 - major[4][0] * scalar2;
  major[5][1] = major[5][1] * scalar1 - major[4][1] * scalar2;
  major[5][2] = major[5][2] * scalar1 - major[4][2] * scalar2;
  scalar2 = minor[3][0];
  minor[3][1] = minor[3][1] * scalar1 - minor[0][1] * scalar2;
  major[3][0] = major[3][0] * scalar1 - major[0][0] * scalar2;
  major[3][1] = major[3][1] * scalar1 - major[0][1] * scalar2;
  major[3][2] = major[3][2] * scalar1 - major[0][2] * scalar2;
  major[7][0] = major[7][0] * scalar1 - major[4][0] * scalar2;
  major[7][1] = major[7][1] * scalar1 - major[4][1] * scalar2;
  major[7][2] = major[7][2] * scalar1 - major[4][2] * scalar2;
  scalar1 = minor[1][1];
  scalar2 = minor[3][1];
  major[3][0] = major[3][0] * scalar1 - major[1][0] * scalar2;
  major[3][1] = major[3][1] * scalar1 - major[1][1] * scalar2;
  major[3][2] = major[3][2] * scalar1 - major[1][2] * scalar2;
  major[7][0] = major[7][0] * scalar1 - major[5][0] * scalar2;
  major[7][1] = major[7][1] * scalar1 - major[5][1] * scalar2;
  major[7][2] = major[7][2] * scalar1 - major[5][2] * scalar2;
  scalar2 = minor[0][1];
  minor[0][0] = minor[0][0] * scalar1 - minor[1][0] * scalar2;
  major[0][0] = major[0][0] * scalar1 - major[1][0] * scalar2;
  major[0][1] = major[0][1] * scalar1 - major[1][1] * scalar2;
  major[0][2] = major[0][2] * scalar1 - major[1][2] * scalar2;
  major[4][0] = major[4][0] * scalar1 - major[5][0] * scalar2;
  major[4][1] = major[4][1] * scalar1 - major[5][1] * scalar2;
  major[4][2] = major[4][2] * scalar1 - major[5][2] * scalar2;
  scalar1 = minor[0][0];
  major[0][0] /= scalar1;
  major[0][1] /= scalar1;
  major[0][2] /= scalar1;
  major[4][0] /= scalar1;
  major[4][1] /= scalar1;
  major[4][2] /= scalar1;
  scalar1 = minor[1][1];
  major[1][0] /= scalar1;
  major[1][1] /= scalar1;
  major[1][2] /= scalar1;
  major[5][0] /= scalar1;
  major[5][1] /= scalar1;
  major[5][2] /= scalar1;
  scalar1 = minor[2][0];
  scalar2 = minor[2][1];
  major[2][0] -= major[0][0] * scalar1 + major[1][0] * scalar2;
  major[2][1] -= major[0][1] * scalar1 + major[1][1] * scalar2;
  major[2][2] -= major[0][2] * scalar1 + major[1][2] * scalar2;
  major[6][0] -= major[4][0] * scalar1 + major[5][0] * scalar2;
  major[6][1] -= major[4][1] * scalar1 + major[5][1] * scalar2;
  major[6][2] -= major[4][2] * scalar1 + major[5][2] * scalar2;
  scalar1 = major[7][0];
  major[7][1] /= scalar1;
  major[7][2] /= scalar1;
  scalar1 = major[0][0];
  major[0][1] -= scalar1 * major[7][1];
  major[0][2] -= scalar1 * major[7][2];
  scalar1 = major[1][0];
  major[1][1] -= scalar1 * major[7][1];
  major[1][2] -= scalar1 * major[7][2];
  scalar1 = major[2][0];
  major[2][1] -= scalar1 * major[7][1];
  major[2][2] -= scalar1 * major[7][2];
  scalar1 = major[3][0];
  major[3][1] -= scalar1 * major[7][1];
  major[3][2] -= scalar1 * major[7][2];
  scalar1 = major[4][0];
  major[4][1] -= scalar1 * major[7][1];
  major[4][2] -= scalar1 * major[7][2];
  scalar1 = major[5][0];
  major[5][1] -= scalar1 * major[7][1];
  major[5][2] -= scalar1 * major[7][2];
  scalar1 = major[6][0];
  major[6][1] -= scalar1 * major[7][1];
  major[6][2] -= scalar1 * major[7][2];
  scalar1 = major[3][1];
  major[3][2] /= scalar1;
  scalar1 = major[0][1];
  major[0][2] -= scalar1 * major[3][2];
  scalar1 = major[1][1];
  major[1][2] -= scalar1 * major[3][2];
  scalar1 = major[2][1];
  major[2][2] -= scalar1 * major[3][2];
  scalar1 = major[4][1];
  major[4][2] -= scalar1 * major[3][2];
  scalar1 = major[5][1];
  major[5][2] -= scalar1 * major[3][2];
  scalar1 = major[6][1];
  major[6][2] -= scalar1 * major[3][2];
  scalar1 = major[7][1];
  major[7][2] -= scalar1 * major[3][2];
  H[0] = major[0][2];
  H[1] = major[1][2];
  H[2] = major[2][2];
  H[4] = major[4][2];
  H[5] = major[5][2];
  H[6] = major[6][2];
  H[8] = major[7][2];
  H[9] = major[3][2];
  H[10] = 1.0;
}
```