user: What would the C source look like for the assembly code provided here?

```asm
<ls_cost_nm5_f0>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  mov    %rdi,-0x18(%rbp)
  mov    %rsi,-0x20(%rbp)
  mov    %rdx,-0x28(%rbp)
  mov    %rcx,-0x30(%rbp)
  mov    %r8d,-0x34(%rbp)
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L619
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  movsd  (%rax),%xmm0
  jmp    L217
L619:
  pxor   %xmm0,%xmm0
L217:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L59
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L59:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L165
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x8,%rax
  movsd  (%rax),%xmm0
  jmp    L934
L165:
  pxor   %xmm0,%xmm0
L934:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L818
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L818:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L713
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x10,%rax
  movsd  (%rax),%xmm0
  jmp    L669
L713:
  pxor   %xmm0,%xmm0
L669:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L354
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x10,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L354:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L744
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x18,%rax
  movsd  (%rax),%xmm0
  jmp    L361
L744:
  pxor   %xmm0,%xmm0
L361:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1029
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x18,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1029:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L784
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x20,%rax
  movsd  (%rax),%xmm0
  jmp    L920
L784:
  pxor   %xmm0,%xmm0
L920:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L691
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x20,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L691:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L331
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x28,%rax
  movsd  (%rax),%xmm0
  jmp    L439
L331:
  pxor   %xmm0,%xmm0
L439:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L421
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x28,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L421:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L27
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x30,%rax
  movsd  (%rax),%xmm0
  jmp    L858
L27:
  pxor   %xmm0,%xmm0
L858:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L630
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x30,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L630:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L476
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x38,%rax
  movsd  (%rax),%xmm0
  jmp    L159
L476:
  pxor   %xmm0,%xmm0
L159:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1065
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x38,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1065:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L395
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x40,%rax
  movsd  (%rax),%xmm0
  jmp    L1046
L395:
  pxor   %xmm0,%xmm0
L1046:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L37
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x40,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L37:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L754
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x48,%rax
  movsd  (%rax),%xmm0
  jmp    L190
L754:
  pxor   %xmm0,%xmm0
L190:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L674
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x48,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L674:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L218
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x50,%rax
  movsd  (%rax),%xmm0
  jmp    L444
L218:
  pxor   %xmm0,%xmm0
L444:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L778
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x50,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L778:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L148
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x58,%rax
  movsd  (%rax),%xmm0
  jmp    L962
L148:
  pxor   %xmm0,%xmm0
L962:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L260
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x58,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L260:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L855
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x60,%rax
  movsd  (%rax),%xmm0
  jmp    L927
L855:
  pxor   %xmm0,%xmm0
L927:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L38
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x60,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L38:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L222
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x68,%rax
  movsd  (%rax),%xmm0
  jmp    L641
L222:
  pxor   %xmm0,%xmm0
L641:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1075
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x68,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1075:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L261
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x70,%rax
  movsd  (%rax),%xmm0
  jmp    L520
L261:
  pxor   %xmm0,%xmm0
L520:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L689
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x70,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L689:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L747
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x78,%rax
  movsd  (%rax),%xmm0
  jmp    L724
L747:
  pxor   %xmm0,%xmm0
L724:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L181
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x78,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L181:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L45
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  sub    $0xffffffffffffff80,%rax
  movsd  (%rax),%xmm0
  jmp    L915
L45:
  pxor   %xmm0,%xmm0
L915:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L487
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  sub    $0xffffffffffffff80,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L487:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L951
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x88,%rax
  movsd  (%rax),%xmm0
  jmp    L170
L951:
  pxor   %xmm0,%xmm0
L170:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L210
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x88,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L210:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L336
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x90,%rax
  movsd  (%rax),%xmm0
  jmp    L952
L336:
  pxor   %xmm0,%xmm0
L952:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L776
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x90,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L776:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L752
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x98,%rax
  movsd  (%rax),%xmm0
  jmp    L41
L752:
  pxor   %xmm0,%xmm0
L41:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L404
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x98,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L404:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1004
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xa0,%rax
  movsd  (%rax),%xmm0
  jmp    L155
L1004:
  pxor   %xmm0,%xmm0
L155:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L417
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xa0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L417:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L313
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xa8,%rax
  movsd  (%rax),%xmm0
  jmp    L587
L313:
  pxor   %xmm0,%xmm0
L587:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L808
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xa8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L808:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L51
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xb0,%rax
  movsd  (%rax),%xmm0
  jmp    L83
L51:
  pxor   %xmm0,%xmm0
L83:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L528
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xb0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L528:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L822
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xb8,%rax
  movsd  (%rax),%xmm0
  jmp    L785
L822:
  pxor   %xmm0,%xmm0
L785:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L57
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xb8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L57:
  mov    -0x18(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1014
  mov    -0x18(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  movsd  (%rax),%xmm0
  jmp    L762
L1014:
  pxor   %xmm0,%xmm0
L762:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1063
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xc0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1063:
  mov    -0x18(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L749
  mov    -0x18(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x8,%rax
  movsd  (%rax),%xmm0
  jmp    L243
L749:
  pxor   %xmm0,%xmm0
L243:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L145
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xc8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L145:
  mov    -0x18(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L256
  mov    -0x18(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x10,%rax
  movsd  (%rax),%xmm0
  jmp    L443
L256:
  pxor   %xmm0,%xmm0
L443:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L279
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xd0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L279:
  movsd  D9(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1025
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1025:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L814
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L814:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L162
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x10,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L162:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L811
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x18,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L811:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L589
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x20,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L589:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L438
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x28,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L438:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L667
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x30,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L667:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L80
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x38,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L80:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L152
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x40,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L152:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L330
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x48,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L330:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L941
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x50,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L941:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L78
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x58,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L78:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L967
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x60,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L967:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L602
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x68,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L602:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L870
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x70,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L870:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L938
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x78,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L938:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L489
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  sub    $0xffffffffffffff80,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L489:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L527
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x88,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L527:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L965
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x90,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L965:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L384
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x98,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L384:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L789
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xa0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L789:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L767
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xa8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L767:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1016
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xb0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1016:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L525
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xb8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L525:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1033
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xc0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1033:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L284
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xc8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L284:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L550
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xd0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L550:
  mov    $0x0,%eax
  pop    %rbp
  ret
```

tool_calls: name: read_data
arguments: tag: D9
datatype: f64

tool: D9: 1

assistant: ```c
int ls_cost_nm5_f0(const double **arg, double **res, int *iw, double *w, int mem) {
  double a0 = arg[0] ? arg[0][0] : 0;
  if (res[0] != 0)
    res[0][0] = a0;
  a0 = arg[0] ? arg[0][1] : 0;
  if (res[0] != 0)
    res[0][1] = a0;
  a0 = arg[0] ? arg[0][2] : 0;
  if (res[0] != 0)
    res[0][2] = a0;
  a0 = arg[0] ? arg[0][3] : 0;
  if (res[0] != 0)
    res[0][3] = a0;
  a0 = arg[0] ? arg[0][4] : 0;
  if (res[0] != 0)
    res[0][4] = a0;
  a0 = arg[0] ? arg[0][5] : 0;
  if (res[0] != 0)
    res[0][5] = a0;
  a0 = arg[0] ? arg[0][6] : 0;
  if (res[0] != 0)
    res[0][6] = a0;
  a0 = arg[0] ? arg[0][7] : 0;
  if (res[0] != 0)
    res[0][7] = a0;
  a0 = arg[0] ? arg[0][8] : 0;
  if (res[0] != 0)
    res[0][8] = a0;
  a0 = arg[0] ? arg[0][9] : 0;
  if (res[0] != 0)
    res[0][9] = a0;
  a0 = arg[0] ? arg[0][10] : 0;
  if (res[0] != 0)
    res[0][10] = a0;
  a0 = arg[0] ? arg[0][11] : 0;
  if (res[0] != 0)
    res[0][11] = a0;
  a0 = arg[0] ? arg[0][12] : 0;
  if (res[0] != 0)
    res[0][12] = a0;
  a0 = arg[0] ? arg[0][13] : 0;
  if (res[0] != 0)
    res[0][13] = a0;
  a0 = arg[0] ? arg[0][14] : 0;
  if (res[0] != 0)
    res[0][14] = a0;
  a0 = arg[0] ? arg[0][15] : 0;
  if (res[0] != 0)
    res[0][15] = a0;
  a0 = arg[0] ? arg[0][16] : 0;
  if (res[0] != 0)
    res[0][16] = a0;
  a0 = arg[0] ? arg[0][17] : 0;
  if (res[0] != 0)
    res[0][17] = a0;
  a0 = arg[0] ? arg[0][18] : 0;
  if (res[0] != 0)
    res[0][18] = a0;
  a0 = arg[0] ? arg[0][19] : 0;
  if (res[0] != 0)
    res[0][19] = a0;
  a0 = arg[0] ? arg[0][20] : 0;
  if (res[0] != 0)
    res[0][20] = a0;
  a0 = arg[0] ? arg[0][21] : 0;
  if (res[0] != 0)
    res[0][21] = a0;
  a0 = arg[0] ? arg[0][22] : 0;
  if (res[0] != 0)
    res[0][22] = a0;
  a0 = arg[0] ? arg[0][23] : 0;
  if (res[0] != 0)
    res[0][23] = a0;
  a0 = arg[1] ? arg[1][0] : 0;
  if (res[0] != 0)
    res[0][24] = a0;
  a0 = arg[1] ? arg[1][1] : 0;
  if (res[0] != 0)
    res[0][25] = a0;
  a0 = arg[1] ? arg[1][2] : 0;
  if (res[0] != 0)
    res[0][26] = a0;
  a0 = 1.;
  if (res[1] != 0)
    res[1][0] = a0;
  if (res[1] != 0)
    res[1][1] = a0;
  if (res[1] != 0)
    res[1][2] = a0;
  if (res[1] != 0)
    res[1][3] = a0;
  if (res[1] != 0)
    res[1][4] = a0;
  if (res[1] != 0)
    res[1][5] = a0;
  if (res[1] != 0)
    res[1][6] = a0;
  if (res[1] != 0)
    res[1][7] = a0;
  if (res[1] != 0)
    res[1][8] = a0;
  if (res[1] != 0)
    res[1][9] = a0;
  if (res[1] != 0)
    res[1][10] = a0;
  if (res[1] != 0)
    res[1][11] = a0;
  if (res[1] != 0)
    res[1][12] = a0;
  if (res[1] != 0)
    res[1][13] = a0;
  if (res[1] != 0)
    res[1][14] = a0;
  if (res[1] != 0)
    res[1][15] = a0;
  if (res[1] != 0)
    res[1][16] = a0;
  if (res[1] != 0)
    res[1][17] = a0;
  if (res[1] != 0)
    res[1][18] = a0;
  if (res[1] != 0)
    res[1][19] = a0;
  if (res[1] != 0)
    res[1][20] = a0;
  if (res[1] != 0)
    res[1][21] = a0;
  if (res[1] != 0)
    res[1][22] = a0;
  if (res[1] != 0)
    res[1][23] = a0;
  if (res[1] != 0)
    res[1][24] = a0;
  if (res[1] != 0)
    res[1][25] = a0;
  if (res[1] != 0)
    res[1][26] = a0;
  return 0;
}
```