user: 下面的汇编指令对应的C源代码是什么：

```asm
<calcImgProjJacRT>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x2c0,%rsp
  mov    %rdi,-0x298(%rbp)
  mov    %rsi,-0x2a0(%rbp)
  mov    %rdx,-0x2a8(%rbp)
  mov    %rcx,-0x2b0(%rbp)
  mov    %r8,-0x2b8(%rbp)
  mov    %r9,-0x2c0(%rbp)
  mov    -0x298(%rbp),%rax
  movsd  (%rax),%xmm0
  movsd  %xmm0,-0x288(%rbp)
  mov    -0x2a8(%rbp),%rax
  movsd  (%rax),%xmm0
  movsd  %xmm0,-0x280(%rbp)
  movsd  -0x280(%rbp),%xmm0
  mulsd  %xmm0,%xmm0
  movsd  %xmm0,-0x278(%rbp)
  mov    -0x2a8(%rbp),%rax
  movsd  0x8(%rax),%xmm0
  movsd  %xmm0,-0x270(%rbp)
  movsd  -0x270(%rbp),%xmm0
  mulsd  %xmm0,%xmm0
  movsd  %xmm0,-0x268(%rbp)
  mov    -0x2a8(%rbp),%rax
  movsd  0x10(%rax),%xmm0
  movsd  %xmm0,-0x260(%rbp)
  movsd  -0x260(%rbp),%xmm0
  mulsd  %xmm0,%xmm0
  movsd  %xmm0,-0x258(%rbp)
  movsd  D320(%rip),%xmm0
  subsd  -0x278(%rbp),%xmm0
  subsd  -0x268(%rbp),%xmm0
  subsd  -0x258(%rbp),%xmm0
  movq   %xmm0,%rax
  movq   %rax,%xmm0
  call   <sqrt@plt>
  movq   %xmm0,%rax
  mov    %rax,-0x250(%rbp)
  movsd  D320(%rip),%xmm0
  divsd  -0x250(%rbp),%xmm0
  movsd  %xmm0,-0x248(%rbp)
  mov    -0x2a0(%rbp),%rax
  movsd  0x8(%rax),%xmm0
  movsd  %xmm0,-0x240(%rbp)
  movsd  -0x240(%rbp),%xmm0
  mulsd  -0x248(%rbp),%xmm0
  movsd  %xmm0,-0x238(%rbp)
  mov    -0x2a0(%rbp),%rax
  movsd  (%rax),%xmm0
  movsd  %xmm0,-0x230(%rbp)
  movsd  -0x238(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x280(%rbp),%xmm0
  movsd  -0x230(%rbp),%xmm1
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x228(%rbp)
  mov    -0x2b8(%rbp),%rax
  movsd  (%rax),%xmm0
  movsd  %xmm0,-0x220(%rbp)
  mov    -0x2a0(%rbp),%rax
  movsd  0x10(%rax),%xmm0
  movsd  %xmm0,-0x218(%rbp)
  movsd  -0x218(%rbp),%xmm0
  mulsd  -0x248(%rbp),%xmm0
  movsd  %xmm0,-0x210(%rbp)
  mov    -0x2a0(%rbp),%rax
  movsd  0x18(%rax),%xmm0
  movsd  %xmm0,-0x208(%rbp)
  movsd  -0x210(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x280(%rbp),%xmm0
  subsd  -0x208(%rbp),%xmm0
  movsd  %xmm0,-0x200(%rbp)
  mov    -0x2b8(%rbp),%rax
  movsd  0x8(%rax),%xmm0
  movsd  %xmm0,-0x1f8(%rbp)
  movsd  -0x248(%rbp),%xmm0
  mulsd  -0x208(%rbp),%xmm0
  movsd  %xmm0,-0x1f0(%rbp)
  movsd  -0x1f0(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x280(%rbp),%xmm0
  movsd  -0x218(%rbp),%xmm1
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x1e8(%rbp)
  mov    -0x2b8(%rbp),%rax
  movsd  0x10(%rax),%xmm0
  movsd  %xmm0,-0x1e0(%rbp)
  movsd  -0x228(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x220(%rbp),%xmm0
  movsd  -0x200(%rbp),%xmm1
  mulsd  -0x1f8(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x1e8(%rbp),%xmm1
  mulsd  -0x1e0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x1d8(%rbp)
  movsd  -0x250(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x240(%rbp),%xmm0
  movsd  -0x280(%rbp),%xmm1
  mulsd  -0x230(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x270(%rbp),%xmm1
  movapd %xmm1,%xmm2
  mulsd  -0x208(%rbp),%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  movsd  -0x260(%rbp),%xmm0
  mulsd  -0x218(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x1d0(%rbp)
  movsd  -0x1d0(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  movsd  %xmm0,-0x1c8(%rbp)
  movsd  -0x250(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x218(%rbp),%xmm1
  movsd  -0x270(%rbp),%xmm0
  mulsd  -0x230(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x260(%rbp),%xmm0
  mulsd  -0x240(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x280(%rbp),%xmm1
  mulsd  -0x208(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x1c0(%rbp)
  movsd  -0x250(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x208(%rbp),%xmm1
  movsd  -0x260(%rbp),%xmm0
  mulsd  -0x230(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x280(%rbp),%xmm0
  mulsd  -0x218(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x240(%rbp),%xmm1
  mulsd  -0x270(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x1b8(%rbp)
  movsd  -0x1c8(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x220(%rbp),%xmm0
  movsd  -0x1c0(%rbp),%xmm1
  mulsd  -0x1f8(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x1b8(%rbp),%xmm1
  mulsd  -0x1e0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x1b0(%rbp)
  movsd  -0x228(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  movsd  %xmm0,-0x1a8(%rbp)
  movsd  -0x248(%rbp),%xmm0
  mulsd  -0x230(%rbp),%xmm0
  movsd  %xmm0,-0x1a0(%rbp)
  movsd  -0x1a0(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x280(%rbp),%xmm0
  subsd  -0x240(%rbp),%xmm0
  movsd  %xmm0,-0x198(%rbp)
  movsd  -0x250(%rbp),%xmm0
  mulsd  -0x230(%rbp),%xmm0
  movsd  -0x280(%rbp),%xmm1
  mulsd  -0x240(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x270(%rbp),%xmm1
  mulsd  -0x218(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x260(%rbp),%xmm1
  mulsd  -0x208(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x190(%rbp)
  movsd  -0x190(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x220(%rbp),%xmm1
  movsd  -0x1c0(%rbp),%xmm0
  mulsd  -0x1e0(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x1f8(%rbp),%xmm1
  mulsd  -0x1b8(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x188(%rbp)
  movsd  -0x198(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x220(%rbp),%xmm1
  movsd  -0x200(%rbp),%xmm0
  mulsd  -0x1e0(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x1f8(%rbp),%xmm1
  mulsd  -0x1e8(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x180(%rbp)
  movsd  -0x198(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x1f8(%rbp),%xmm1
  movsd  -0x1e8(%rbp),%xmm0
  mulsd  -0x220(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x1e0(%rbp),%xmm1
  mulsd  -0x228(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x178(%rbp)
  movsd  -0x1b8(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  movsd  %xmm0,-0x170(%rbp)
  movsd  -0x190(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x1f8(%rbp),%xmm1
  movsd  -0x1b8(%rbp),%xmm0
  mulsd  -0x220(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x1c8(%rbp),%xmm1
  mulsd  -0x1e0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x168(%rbp)
  movsd  -0x1e8(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  movsd  %xmm0,-0x160(%rbp)
  movsd  -0x198(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x1e0(%rbp),%xmm1
  movsd  -0x1f8(%rbp),%xmm0
  mulsd  -0x228(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x200(%rbp),%xmm1
  mulsd  -0x220(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x158(%rbp)
  movsd  -0x1c0(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  movsd  %xmm0,-0x150(%rbp)
  movsd  -0x190(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x1e0(%rbp),%xmm1
  movsd  -0x1c8(%rbp),%xmm0
  mulsd  -0x1f8(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x1c0(%rbp),%xmm1
  mulsd  -0x220(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x148(%rbp)
  movsd  -0x200(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  movsd  %xmm0,-0x140(%rbp)
  mov    -0x298(%rbp),%rax
  movsd  0x20(%rax),%xmm0
  movsd  %xmm0,-0x138(%rbp)
  movsd  -0x1d8(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x150(%rbp),%xmm1
  movsd  -0x140(%rbp),%xmm0
  mulsd  -0x1b0(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x198(%rbp),%xmm0
  mulsd  -0x168(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x190(%rbp),%xmm0
  mulsd  -0x178(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x158(%rbp),%xmm0
  mulsd  -0x1d0(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x148(%rbp),%xmm0
  mulsd  -0x1a8(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x180(%rbp),%xmm1
  mulsd  -0x170(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x160(%rbp),%xmm1
  mulsd  -0x188(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x130(%rbp)
  mov    -0x298(%rbp),%rax
  movsd  0x8(%rax),%xmm0
  movsd  %xmm0,-0x128(%rbp)
  movsd  -0x1d8(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x170(%rbp),%xmm1
  movsd  -0x160(%rbp),%xmm0
  mulsd  -0x1b0(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x198(%rbp),%xmm0
  mulsd  -0x148(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x190(%rbp),%xmm0
  mulsd  -0x158(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x180(%rbp),%xmm0
  mulsd  -0x150(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x188(%rbp),%xmm0
  mulsd  -0x140(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x1d0(%rbp),%xmm1
  mulsd  -0x178(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x168(%rbp),%xmm1
  mulsd  -0x1a8(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x120(%rbp)
  movsd  -0x170(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x1b0(%rbp),%xmm1
  movsd  -0x190(%rbp),%xmm0
  mulsd  -0x148(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x188(%rbp),%xmm0
  mulsd  -0x150(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x168(%rbp),%xmm1
  movapd %xmm1,%xmm2
  mulsd  -0x1d0(%rbp),%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  mov    -0x2b0(%rbp),%rax
  add    $0x10,%rax
  movsd  (%rax),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x118(%rbp)
  movsd  D320(%rip),%xmm0
  divsd  -0x118(%rbp),%xmm0
  movsd  %xmm0,-0x110(%rbp)
  movsd  -0x1b0(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x150(%rbp),%xmm1
  movsd  -0x190(%rbp),%xmm0
  mulsd  -0x168(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x148(%rbp),%xmm0
  mulsd  -0x1d0(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x188(%rbp),%xmm1
  movapd %xmm1,%xmm2
  mulsd  -0x170(%rbp),%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  mov    -0x2b0(%rbp),%rax
  add    $0x8,%rax
  movsd  (%rax),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x108(%rbp)
  movsd  -0x118(%rbp),%xmm0
  mulsd  %xmm0,%xmm0
  movsd  %xmm0,-0x100(%rbp)
  movsd  D320(%rip),%xmm0
  divsd  -0x100(%rbp),%xmm0
  movsd  %xmm0,-0xf8(%rbp)
  movsd  -0x1d0(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x1b0(%rbp),%xmm1
  movsd  -0x190(%rbp),%xmm0
  mulsd  -0x188(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x168(%rbp),%xmm0
  mulsd  -0x170(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x148(%rbp),%xmm1
  movapd %xmm1,%xmm2
  mulsd  -0x150(%rbp),%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  mov    -0x2b0(%rbp),%rax
  movsd  (%rax),%xmm0
  addsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x288(%rbp),%xmm1
  movsd  -0x138(%rbp),%xmm0
  mulsd  -0x108(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x118(%rbp),%xmm0
  mulsd  -0x128(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0xf8(%rbp),%xmm1
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0xf0(%rbp)
  movsd  -0x1d8(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x1d0(%rbp),%xmm1
  movsd  -0x1a8(%rbp),%xmm0
  mulsd  -0x1b0(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x198(%rbp),%xmm0
  mulsd  -0x188(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x190(%rbp),%xmm0
  mulsd  -0x180(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x170(%rbp),%xmm0
  mulsd  -0x178(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x168(%rbp),%xmm0
  mulsd  -0x160(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x150(%rbp),%xmm1
  mulsd  -0x158(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x148(%rbp),%xmm1
  mulsd  -0x140(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x288(%rbp),%xmm1
  movsd  -0x138(%rbp),%xmm0
  mulsd  -0x130(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x128(%rbp),%xmm0
  mulsd  -0x120(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  mulsd  -0x110(%rbp),%xmm0
  movsd  -0x120(%rbp),%xmm1
  mulsd  -0xf0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  mov    -0x2c0(%rbp),%rax
  movsd  %xmm0,(%rax)
  mov    -0x298(%rbp),%rax
  add    $0x18,%rax
  movsd  (%rax),%xmm0
  movsd  -0x288(%rbp),%xmm1
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0xe8(%rbp)
  mov    -0x298(%rbp),%rax
  movsd  0x10(%rax),%xmm0
  movsd  %xmm0,-0xe0(%rbp)
  movsd  -0xe8(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x108(%rbp),%xmm1
  movsd  -0x118(%rbp),%xmm0
  mulsd  -0xe0(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0xf8(%rbp),%xmm1
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0xd8(%rbp)
  movsd  -0x130(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0xe8(%rbp),%xmm1
  movsd  -0xe0(%rbp),%xmm0
  mulsd  -0x120(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  mulsd  -0x110(%rbp),%xmm0
  movsd  -0xd8(%rbp),%xmm1
  mulsd  -0x120(%rbp),%xmm1
  mov    -0x2c0(%rbp),%rax
  add    $0x30,%rax
  subsd  %xmm1,%xmm0
  movsd  %xmm0,(%rax)
  movsd  -0x238(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x270(%rbp),%xmm0
  movsd  -0x208(%rbp),%xmm1
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0xd0(%rbp)
  movsd  -0x210(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x270(%rbp),%xmm0
  movsd  -0x230(%rbp),%xmm1
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0xc8(%rbp)
  movsd  -0x1f0(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x270(%rbp),%xmm0
  subsd  -0x240(%rbp),%xmm0
  movsd  %xmm0,-0xc0(%rbp)
  movsd  -0xd0(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x220(%rbp),%xmm0
  movsd  -0xc8(%rbp),%xmm1
  mulsd  -0x1f8(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0xc0(%rbp),%xmm1
  mulsd  -0x1e0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0xb8(%rbp)
  movsd  -0xd0(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  movsd  %xmm0,-0xb0(%rbp)
  movsd  -0x1a0(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x270(%rbp),%xmm0
  subsd  -0x218(%rbp),%xmm0
  movsd  %xmm0,-0xa8(%rbp)
  movsd  -0xa8(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x220(%rbp),%xmm1
  movsd  -0xc8(%rbp),%xmm0
  mulsd  -0x1e0(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0xc0(%rbp),%xmm1
  mulsd  -0x1f8(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0xa0(%rbp)
  movsd  -0xa8(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x1f8(%rbp),%xmm1
  movsd  -0xc0(%rbp),%xmm0
  mulsd  -0x220(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0xd0(%rbp),%xmm1
  mulsd  -0x1e0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x98(%rbp)
  movsd  -0xc0(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  movsd  %xmm0,-0x90(%rbp)
  movsd  -0xa8(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x1e0(%rbp),%xmm1
  movsd  -0xd0(%rbp),%xmm0
  mulsd  -0x1f8(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0xc8(%rbp),%xmm1
  mulsd  -0x220(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x88(%rbp)
  movsd  -0xc8(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  movsd  %xmm0,-0x80(%rbp)
  movsd  -0xb8(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x150(%rbp),%xmm1
  movsd  -0x1b0(%rbp),%xmm0
  mulsd  -0x80(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0xa8(%rbp),%xmm0
  mulsd  -0x168(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x190(%rbp),%xmm0
  mulsd  -0x98(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x88(%rbp),%xmm0
  mulsd  -0x1d0(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x148(%rbp),%xmm0
  mulsd  -0xb0(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x170(%rbp),%xmm1
  mulsd  -0xa0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x188(%rbp),%xmm1
  mulsd  -0x90(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x78(%rbp)
  movsd  -0xb8(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x170(%rbp),%xmm1
  movsd  -0x1b0(%rbp),%xmm0
  mulsd  -0x90(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x148(%rbp),%xmm0
  mulsd  -0xa8(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x190(%rbp),%xmm0
  mulsd  -0x88(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0xa0(%rbp),%xmm0
  mulsd  -0x150(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x188(%rbp),%xmm0
  mulsd  -0x80(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x98(%rbp),%xmm1
  mulsd  -0x1d0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x168(%rbp),%xmm1
  mulsd  -0xb0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x70(%rbp)
  movsd  -0xb8(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x1d0(%rbp),%xmm1
  movsd  -0xb0(%rbp),%xmm0
  mulsd  -0x1b0(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0xa8(%rbp),%xmm0
  mulsd  -0x188(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0xa0(%rbp),%xmm0
  mulsd  -0x190(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x98(%rbp),%xmm0
  mulsd  -0x170(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x168(%rbp),%xmm0
  mulsd  -0x90(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x88(%rbp),%xmm1
  mulsd  -0x150(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x148(%rbp),%xmm1
  mulsd  -0x80(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x288(%rbp),%xmm1
  movsd  -0x138(%rbp),%xmm0
  mulsd  -0x78(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x128(%rbp),%xmm0
  mulsd  -0x70(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  mulsd  -0x110(%rbp),%xmm0
  movsd  -0xf0(%rbp),%xmm1
  mulsd  -0x70(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  mov    -0x2c0(%rbp),%rax
  movsd  %xmm0,0x8(%rax)
  movsd  -0xe8(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x78(%rbp),%xmm1
  movsd  -0xe0(%rbp),%xmm0
  mulsd  -0x70(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  mulsd  -0x110(%rbp),%xmm0
  movsd  -0xd8(%rbp),%xmm1
  mulsd  -0x70(%rbp),%xmm1
  mov    -0x2c0(%rbp),%rax
  add    $0x30,%rax
  subsd  %xmm1,%xmm0
  movsd  %xmm0,0x8(%rax)
  movsd  -0x238(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x260(%rbp),%xmm0
  subsd  -0x218(%rbp),%xmm0
  movsd  %xmm0,-0x68(%rbp)
  movsd  -0x210(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x260(%rbp),%xmm0
  movsd  -0x240(%rbp),%xmm1
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x60(%rbp)
  movsd  -0x1f0(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x260(%rbp),%xmm0
  movsd  -0x230(%rbp),%xmm1
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x58(%rbp)
  movsd  -0x68(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x220(%rbp),%xmm0
  movsd  -0x1f8(%rbp),%xmm1
  mulsd  -0x60(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x58(%rbp),%xmm1
  mulsd  -0x1e0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x50(%rbp)
  movsd  -0x68(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  movsd  %xmm0,-0x48(%rbp)
  movsd  -0x1a0(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  mulsd  -0x260(%rbp),%xmm0
  subsd  -0x208(%rbp),%xmm0
  movsd  %xmm0,-0x40(%rbp)
  movsd  -0x40(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x220(%rbp),%xmm1
  movsd  -0x60(%rbp),%xmm0
  mulsd  -0x1e0(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x58(%rbp),%xmm1
  mulsd  -0x1f8(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x38(%rbp)
  movsd  -0x1f8(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x40(%rbp),%xmm1
  movsd  -0x58(%rbp),%xmm0
  mulsd  -0x220(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x68(%rbp),%xmm1
  mulsd  -0x1e0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  -0x58(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  movsd  %xmm0,-0x28(%rbp)
  movsd  -0x40(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x1e0(%rbp),%xmm1
  movsd  -0x68(%rbp),%xmm0
  mulsd  -0x1f8(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x60(%rbp),%xmm1
  mulsd  -0x220(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x20(%rbp)
  movsd  -0x60(%rbp),%xmm0
  movq   D248(%rip),%xmm1
  xorpd  %xmm1,%xmm0
  movsd  %xmm0,-0x18(%rbp)
  movsd  -0x50(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x150(%rbp),%xmm1
  movsd  -0x1b0(%rbp),%xmm0
  mulsd  -0x18(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x168(%rbp),%xmm0
  mulsd  -0x40(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x190(%rbp),%xmm0
  mulsd  -0x30(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x20(%rbp),%xmm0
  mulsd  -0x1d0(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x148(%rbp),%xmm0
  mulsd  -0x48(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x38(%rbp),%xmm1
  mulsd  -0x170(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x188(%rbp),%xmm1
  mulsd  -0x28(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x10(%rbp)
  movsd  -0x50(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x170(%rbp),%xmm1
  movsd  -0x1b0(%rbp),%xmm0
  mulsd  -0x28(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x40(%rbp),%xmm0
  mulsd  -0x148(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x190(%rbp),%xmm0
  mulsd  -0x20(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x38(%rbp),%xmm0
  mulsd  -0x150(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x18(%rbp),%xmm0
  mulsd  -0x188(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x30(%rbp),%xmm1
  mulsd  -0x1d0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x168(%rbp),%xmm1
  mulsd  -0x48(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x50(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x1d0(%rbp),%xmm1
  movsd  -0x48(%rbp),%xmm0
  mulsd  -0x1b0(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x40(%rbp),%xmm0
  mulsd  -0x188(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x190(%rbp),%xmm0
  mulsd  -0x38(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x30(%rbp),%xmm0
  mulsd  -0x170(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x168(%rbp),%xmm0
  mulsd  -0x28(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  -0x20(%rbp),%xmm1
  mulsd  -0x150(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  -0x148(%rbp),%xmm1
  mulsd  -0x18(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x288(%rbp),%xmm1
  movsd  -0x10(%rbp),%xmm0
  mulsd  -0x138(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x8(%rbp),%xmm0
  mulsd  -0x128(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  mulsd  -0x110(%rbp),%xmm0
  movsd  -0xf0(%rbp),%xmm1
  mulsd  -0x8(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  mov    -0x2c0(%rbp),%rax
  movsd  %xmm0,0x10(%rax)
  movsd  -0xe8(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x10(%rbp),%xmm1
  movsd  -0x8(%rbp),%xmm0
  mulsd  -0xe0(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  mulsd  -0x110(%rbp),%xmm0
  movsd  -0xd8(%rbp),%xmm1
  mulsd  -0x8(%rbp),%xmm1
  mov    -0x2c0(%rbp),%rax
  add    $0x30,%rax
  subsd  %xmm1,%xmm0
  movsd  %xmm0,0x10(%rax)
  movsd  -0x110(%rbp),%xmm0
  mulsd  -0x288(%rbp),%xmm0
  mov    -0x2c0(%rbp),%rax
  movsd  %xmm0,0x18(%rax)
  mov    -0x2c0(%rbp),%rax
  add    $0x30,%rax
  pxor   %xmm0,%xmm0
  movsd  %xmm0,0x18(%rax)
  movsd  -0x138(%rbp),%xmm0
  mulsd  -0x110(%rbp),%xmm0
  mov    -0x2c0(%rbp),%rax
  movsd  %xmm0,0x20(%rax)
  mov    -0x2c0(%rbp),%rax
  add    $0x30,%rax
  movsd  -0xe8(%rbp),%xmm0
  mulsd  -0x110(%rbp),%xmm0
  movsd  %xmm0,0x20(%rax)
  movsd  -0x128(%rbp),%xmm0
  mulsd  -0x110(%rbp),%xmm0
  subsd  -0xf0(%rbp),%xmm0
  mov    -0x2c0(%rbp),%rax
  movsd  %xmm0,0x28(%rax)
  movsd  -0xe0(%rbp),%xmm0
  mulsd  -0x110(%rbp),%xmm0
  mov    -0x2c0(%rbp),%rax
  add    $0x30,%rax
  subsd  -0xd8(%rbp),%xmm0
  movsd  %xmm0,0x28(%rax)
  nop
  leave
  ret
```

tool_calls: name: retrieve_data
arguments: tag: D320
type_guessed: f64
name: retrieve_data
arguments: tag: D248
type_guessed: f32[2]

tool: D320: 1

tool: {"D248": [0.0,-0.0]}

assistant: ```c
void calcImgProjJacRT(double a[5], double qr0[4], double v[3], double t[3], double M[3], double jacmRT[2][6]) {
  double t1;
  double t10;
  double t107;
  double t109;
  double t11;
  double t118;
  double t12;
  double t126;
  double t127;
  double t14;
  double t141;
  double t145;
  double t146;
  double t147;
  double t15;
  double t150;
  double t152;
  double t159;
  double t16;
  double t162;
  double t165;
  double t168;
  double t170;
  double t172;
  double t175;
  double t18;
  double t180;
  double t185;
  double t187;
  double t19;
  double t192;
  double t194;
  double t2;
  double t206;
  double t21;
  double t216;
  double t22;
  double t227;
  double t23;
  double t230;
  double t233;
  double t235;
  double t237;
  double t240;
  double t245;
  double t25;
  double t250;
  double t252;
  double t257;
  double t259;
  double t27;
  double t271;
  double t28;
  double t281;
  double t3;
  double t30;
  double t35;
  double t37;
  double t4;
  double t43;
  double t49;
  double t5;
  double t51;
  double t52;
  double t54;
  double t56;
  double t6;
  double t61;
  double t65;
  double t7;
  double t70;
  double t75;
  double t76;
  double t81;
  double t82;
  double t87;
  double t88;
  double t9;
  double t93;
  double t94;
  double t98;
  {
    t1 = a[0];
    t2 = v[0];
    t3 = t2 * t2;
    t4 = v[1];
    t5 = t4 * t4;
    t6 = v[2];
    t7 = t6 * t6;
    t9 = sqrt(1.0 - t3 - t5 - t7);
    t10 = 1 / t9;
    t11 = qr0[1];
    t12 = t11 * t10;
    t14 = qr0[0];
    t15 = -t12 * t2 + t14;
    t16 = M[0];
    t18 = qr0[2];
    t19 = t18 * t10;
    t21 = qr0[3];
    t22 = -t19 * t2 - t21;
    t23 = M[1];
    t25 = t10 * t21;
    t27 = -t25 * t2 + t18;
    t28 = M[2];
    t30 = -t15 * t16 - t22 * t23 - t27 * t28;
    t35 = -t9 * t11 - t2 * t14 - t4 * t21 + t6 * t18;
    t37 = -t35;
    t43 = t9 * t18 + t4 * t14 + t6 * t11 - t2 * t21;
    t49 = t9 * t21 + t6 * t14 + t2 * t18 - t11 * t4;
    t51 = -t37 * t16 - t43 * t23 - t49 * t28;
    t52 = -t15;
    t54 = t10 * t14;
    t56 = -t54 * t2 - t11;
    t61 = t9 * t14 - t2 * t11 - t4 * t18 - t6 * t21;
    t65 = t61 * t16 + t43 * t28 - t23 * t49;
    t70 = t56 * t16 + t22 * t28 - t23 * t27;
    t75 = t56 * t23 + t27 * t16 - t28 * t15;
    t76 = -t49;
    t81 = t61 * t23 + t49 * t16 - t37 * t28;
    t82 = -t27;
    t87 = t56 * t28 + t23 * t15 - t22 * t16;
    t88 = -t43;
    t93 = t61 * t28 + t37 * t23 - t43 * t16;
    t94 = -t22;
    t98 = a[4];
    t107 = t30 * t88 + t94 * t51 + t56 * t81 + t61 * t75 + t87 * t35 + t93 * t52 - t70 * t76 - t82 * t65;
    t109 = a[1];
    t118 = t30 * t76 + t82 * t51 + t56 * t93 + t61 * t87 + t70 * t88 + t65 * t94 - t35 * t75 - t81 * t52;
    t126 = t76 * t51 + t61 * t93 + t65 * t88 - t81 * t35 + t[2];
    t127 = 1 / t126;
    t141 = t51 * t88 + t61 * t81 + t93 * t35 - t65 * t76 + t[1];
    t145 = t126 * t126;
    t146 = 1 / t145;
    t147 = (t1 * (t35 * t51 + t61 * t65 + t81 * t76 - t93 * t88 + t[0]) + t98 * t141 + t126 * t109) * t146;
    jacmRT[0][0] = (t1 * (t30 * t35 + t52 * t51 + t56 * t65 + t61 * t70 + t76 * t75 + t81 * t82 - t88 * t87 - t93 * t94) + t98 * t107 + t109 * t118) * t127 - t118 * t147;
    t150 = t1 * a[3];
    t152 = a[2];
    t159 = (t150 * t141 + t126 * t152) * t146;
    jacmRT[1][0] = (t107 * t150 + t152 * t118) * t127 - t159 * t118;
    t162 = -t12 * t4 + t21;
    t165 = -t19 * t4 + t14;
    t168 = -t25 * t4 - t11;
    t170 = -t162 * t16 - t165 * t23 - t168 * t28;
    t172 = -t162;
    t175 = -t54 * t4 - t18;
    t180 = t175 * t16 + t165 * t28 - t168 * t23;
    t185 = t175 * t23 + t168 * t16 - t162 * t28;
    t187 = -t168;
    t192 = t175 * t28 + t162 * t23 - t165 * t16;
    t194 = -t165;
    t206 = t170 * t88 + t51 * t194 + t175 * t81 + t61 * t185 + t192 * t35 + t93 * t172 - t76 * t180 - t65 * t187;
    t216 = t170 * t76 + t51 * t187 + t93 * t175 + t61 * t192 + t180 * t88 + t65 * t194 - t185 * t35 - t81 * t172;
    jacmRT[0][1] = (t1 * (t170 * t35 + t172 * t51 + t175 * t65 + t180 * t61 + t185 * t76 + t81 * t187 - t192 * t88 - t93 * t194) + t98 * t206 + t109 * t216) * t127 - t147 * t216;
    jacmRT[1][1] = (t150 * t206 + t152 * t216) * t127 - t159 * t216;
    t227 = -t12 * t6 - t18;
    t230 = -t19 * t6 + t11;
    t233 = -t25 * t6 + t14;
    t235 = -t227 * t16 - t23 * t230 - t233 * t28;
    t237 = -t227;
    t240 = -t54 * t6 - t21;
    t245 = t240 * t16 + t230 * t28 - t233 * t23;
    t250 = t23 * t240 + t233 * t16 - t227 * t28;
    t252 = -t233;
    t257 = t240 * t28 + t227 * t23 - t230 * t16;
    t259 = -t230;
    t271 = t235 * t88 + t51 * t259 + t81 * t240 + t61 * t250 + t257 * t35 + t93 * t237 - t245 * t76 - t65 * t252;
    t281 = t235 * t76 + t51 * t252 + t240 * t93 + t61 * t257 + t245 * t88 + t259 * t65 - t250 * t35 - t81 * t237;
    jacmRT[0][2] = (t1 * (t235 * t35 + t237 * t51 + t240 * t65 + t61 * t245 + t250 * t76 + t81 * t252 - t257 * t88 - t93 * t259) + t271 * t98 + t281 * t109) * t127 - t147 * t281;
    jacmRT[1][2] = (t150 * t271 + t281 * t152) * t127 - t159 * t281;
    jacmRT[0][3] = t127 * t1;
    jacmRT[1][3] = 0.0;
    jacmRT[0][4] = t98 * t127;
    jacmRT[1][4] = t150 * t127;
    jacmRT[0][5] = t109 * t127 - t147;
    jacmRT[1][5] = t152 * t127 - t159;
    return;
  }
}
```