user: Please show me the C implementation that matches the assembly code listed below:

```asm
<case20>:
  endbr64
  sub    $0x18,%rsp
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0x0,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  addsd  D239(%rip),%xmm0
  movsd  %xmm0,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0x1,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  movapd %xmm0,%xmm2
  addsd  0x8(%rsp),%xmm2
  movsd  %xmm2,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0x2,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  addsd  0x8(%rsp),%xmm0
  movsd  %xmm0,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0x3,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  movapd %xmm0,%xmm4
  addsd  0x8(%rsp),%xmm4
  movsd  %xmm4,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0x4,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  addsd  0x8(%rsp),%xmm0
  movsd  %xmm0,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0x5,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  movapd %xmm0,%xmm6
  addsd  0x8(%rsp),%xmm6
  movsd  %xmm6,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0x6,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  addsd  0x8(%rsp),%xmm0
  movsd  %xmm0,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0x7,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  movapd %xmm0,%xmm1
  addsd  0x8(%rsp),%xmm1
  movsd  %xmm1,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0x8,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  addsd  0x8(%rsp),%xmm0
  movsd  %xmm0,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0x9,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  movapd %xmm0,%xmm5
  addsd  0x8(%rsp),%xmm5
  movsd  %xmm5,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0xa,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  addsd  0x8(%rsp),%xmm0
  movsd  %xmm0,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0xb,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  movapd %xmm0,%xmm3
  addsd  0x8(%rsp),%xmm3
  movsd  %xmm3,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0xc,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  addsd  0x8(%rsp),%xmm0
  movsd  %xmm0,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0xd,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  movapd %xmm0,%xmm2
  addsd  0x8(%rsp),%xmm2
  movsd  %xmm2,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0xe,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  addsd  0x8(%rsp),%xmm0
  movsd  %xmm0,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0xf,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  movapd %xmm0,%xmm6
  addsd  0x8(%rsp),%xmm6
  movsd  %xmm6,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0x10,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  addsd  0x8(%rsp),%xmm0
  movsd  %xmm0,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0x11,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  movapd %xmm0,%xmm1
  addsd  0x8(%rsp),%xmm1
  movsd  %xmm1,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0x12,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  addsd  0x8(%rsp),%xmm0
  movsd  %xmm0,0x8(%rsp)
  mov    D383(%rip),%rax
  movq   %rax,%xmm0
  mov    $0x13,%edi
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vsume@plt>
  mov    %rax,%rdi
  mov    D197(%rip),%rax
  movq   %rax,%xmm0
  call   <vcons@plt>
  mov    %eax,%edi
  call   <vnorm@plt>
  pxor   %xmm0,%xmm0
  cvtsi2sd %rax,%xmm0
  addsd  0x8(%rsp),%xmm0
  add    $0x18,%rsp
  ret
```

tool_calls: name: extract_symbolic_data
arguments: label: D383
type_guessed: f64
name: extract_symbolic_data
arguments: label: D197
type_guessed: f64
name: extract_symbolic_data
arguments: label: D239
type_guessed: f64

tool: D383: 1

tool: D197: 2

tool: D239: 0

assistant: ```c
double case20() {
  double acc = 0.0;
  acc += vnorm(vcons((long)vsume(vcons(0, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(1, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(2, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(3, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(4, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(5, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(6, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(7, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(8, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(9, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(10, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(11, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(12, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(13, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(14, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(15, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(16, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(17, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(18, 1.0)), 2.0));
  acc += vnorm(vcons((long)vsume(vcons(19, 1.0)), 2.0));
  return (acc);
}
```