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

```asm
<MakeAngularGrid_170>:
  endbr64
  push   %rbp
  pxor   %xmm1,%xmm1
  xor    %esi,%esi
  mov    %rdi,%rbp
  push   %rbx
  movapd %xmm1,%xmm0
  sub    $0x8,%rsp
  movsd  D49(%rip),%xmm2
  call   <SphGenOh@plt>
  pxor   %xmm3,%xmm3
  mov    $0x1,%esi
  movsd  D100(%rip),%xmm2
  movslq %eax,%rdi
  movapd %xmm3,%xmm1
  movapd %xmm3,%xmm0
  mov    %rax,%rbx
  shl    $0x5,%rdi
  add    %rbp,%rdi
  call   <SphGenOh@plt>
  pxor   %xmm3,%xmm3
  mov    $0x2,%esi
  movsd  D133(%rip),%xmm2
  add    %eax,%ebx
  movapd %xmm3,%xmm1
  movapd %xmm3,%xmm0
  movslq %ebx,%rdi
  shl    $0x5,%rdi
  add    %rbp,%rdi
  call   <SphGenOh@plt>
  pxor   %xmm3,%xmm3
  mov    $0x3,%esi
  movsd  D2(%rip),%xmm2
  add    %eax,%ebx
  movsd  D115(%rip),%xmm0
  movapd %xmm3,%xmm1
  movslq %ebx,%rdi
  shl    $0x5,%rdi
  add    %rbp,%rdi
  call   <SphGenOh@plt>
  pxor   %xmm3,%xmm3
  mov    $0x3,%esi
  movsd  D70(%rip),%xmm2
  add    %eax,%ebx
  movsd  D90(%rip),%xmm0
  movapd %xmm3,%xmm1
  movslq %ebx,%rdi
  shl    $0x5,%rdi
  add    %rbp,%rdi
  call   <SphGenOh@plt>
  pxor   %xmm3,%xmm3
  mov    $0x3,%esi
  movsd  D101(%rip),%xmm2
  add    %eax,%ebx
  movsd  D21(%rip),%xmm0
  movapd %xmm3,%xmm1
  movslq %ebx,%rdi
  shl    $0x5,%rdi
  add    %rbp,%rdi
  call   <SphGenOh@plt>
  pxor   %xmm3,%xmm3
  mov    $0x4,%esi
  movsd  D35(%rip),%xmm2
  add    %eax,%ebx
  movsd  D104(%rip),%xmm0
  movapd %xmm3,%xmm1
  movslq %ebx,%rdi
  shl    $0x5,%rdi
  add    %rbp,%rdi
  call   <SphGenOh@plt>
  movsd  D118(%rip),%xmm2
  mov    $0x5,%esi
  movsd  D29(%rip),%xmm1
  add    %eax,%ebx
  movsd  D5(%rip),%xmm0
  movslq %ebx,%rax
  shl    $0x5,%rax
  lea    0x0(%rbp,%rax,1),%rdi
  call   <SphGenOh@plt>
  add    $0x8,%rsp
  add    %ebx,%eax
  pop    %rbx
  pop    %rbp
  ret
```

tool_calls: name: extract_symbolic_data
arguments: label: D49
type_guessed: byte[8]
name: extract_symbolic_data
arguments: label: D100
type_guessed: byte[8]
name: extract_symbolic_data
arguments: label: D133
type_guessed: byte[8]
name: extract_symbolic_data
arguments: label: D2
type_guessed: byte[8]
name: extract_symbolic_data
arguments: label: D115
type_guessed: byte[8]
name: extract_symbolic_data
arguments: label: D70
type_guessed: byte[8]
name: extract_symbolic_data
arguments: label: D90
type_guessed: byte[8]
name: extract_symbolic_data
arguments: label: D101
type_guessed: byte[8]
name: extract_symbolic_data
arguments: label: D21
type_guessed: byte[8]
name: extract_symbolic_data
arguments: label: D35
type_guessed: byte[8]
name: extract_symbolic_data
arguments: label: D104
type_guessed: byte[8]
name: extract_symbolic_data
arguments: label: D118
type_guessed: byte[8]
name: extract_symbolic_data
arguments: label: D29
type_guessed: byte[8]
name: extract_symbolic_data
arguments: label: D5
type_guessed: byte[8]

tool: {"D49": [0x6b,0xb3,0xcf,0x6e,0x30,0xb6,0x76,0x3f]}

tool: {"D100": [0x14,0x33,0x17,0xfb,0x40,0xde,0x78,0x3f]}

tool: {"D133": [0x02,0xb9,0x16,0xa6,0xc4,0x25,0x7a,0x3f]}

tool: {"D2": [0xcd,0xf9,0xbf,0x02,0x2d,0x3b,0x75,0x3f]}

tool: {"D115": [0x86,0xb9,0x49,0xe8,0xf8,0x53,0xd0,0x3f]}

tool: {"D70": [0x57,0x0e,0x9c,0x27,0xd4,0xe0,0x79,0x3f]}

tool: {"D90": [0x71,0x73,0x9e,0xba,0x5b,0x94,0xe5,0x3f]}

tool: {"D101": [0x59,0xfd,0xbd,0x1d,0xec,0x66,0x79,0x3f]}

tool: {"D21": [0x7a,0x3a,0xeb,0x70,0x1a,0xa4,0xdb,0x3f]}

tool: {"D35": [0x56,0x47,0x6f,0x7b,0x33,0x6f,0x76,0x3f]}

tool: {"D104": [0xa4,0x71,0xaa,0x46,0xaa,0xba,0xd0,0x3f]}

tool: {"D118": [0xe4,0xcc,0x97,0xe0,0x4d,0x72,0x78,0x3f]}

tool: {"D29": [0x89,0x2f,0xd0,0xd2,0x51,0x84,0xc2,0x3f]}

tool: {"D5": [0xfa,0xa7,0x0d,0xc4,0x5b,0xf0,0xdf,0x3f]}

assistant: ```c
int MakeAngularGrid_170(double (*pOut)[4]) {
  double a = 0, b = 0, v;
  int N = 0;
  v = 0.5544842902037365e-2;
  N += SphGenOh(&pOut[N][0], 0, a, b, v);
  v = 0.6071332770670752e-2;
  N += SphGenOh(&pOut[N][0], 1, a, b, v);
  v = 0.6383674773515093e-2;
  N += SphGenOh(&pOut[N][0], 2, a, b, v);
  a = 0.2551252621114134e+0;
  v = 0.5183387587747790e-2;
  N += SphGenOh(&pOut[N][0], 3, a, b, v);
  a = 0.6743601460362766e+0;
  v = 0.6317929009813725e-2;
  N += SphGenOh(&pOut[N][0], 3, a, b, v);
  a = 0.4318910696719410e+0;
  v = 0.6201670006589077e-2;
  N += SphGenOh(&pOut[N][0], 3, a, b, v);
  a = 0.2613931360335988e+0;
  v = 0.5477143385137348e-2;
  N += SphGenOh(&pOut[N][0], 4, a, b, v);
  a = 0.4990453161796037e+0;
  b = 0.1446630744325115e+0;
  v = 0.5968383987681156e-2;
  N += SphGenOh(&pOut[N][0], 5, a, b, v);
  return N;
}
```