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

```asm
<zcdf>:
  endbr64
  movapd %xmm0,%xmm2
  ucomisd D27(%rip),%xmm0
  jp     L46
  movsd  D164(%rip),%xmm0
  je     L40
L46:
  movapd %xmm2,%xmm1
  andpd  D214(%rip),%xmm1
  mulsd  D164(%rip),%xmm1
  pxor   %xmm0,%xmm0
  comisd D144(%rip),%xmm1
  jae    L40
  movsd  D335(%rip),%xmm0
  comisd %xmm1,%xmm0
  ja     L51
  subsd  D129(%rip),%xmm1
  movapd %xmm1,%xmm0
  mulsd  D226(%rip),%xmm0
  addsd  D307(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  subsd  D339(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  subsd  D66(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  addsd  D2(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  subsd  D86(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  subsd  D152(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  addsd  D127(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  subsd  D186(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  addsd  D150(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  subsd  D322(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  addsd  D64(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  subsd  D78(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  addsd  D7(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  addsd  D123(%rip),%xmm0
L16:
  comisd D27(%rip),%xmm2
  jbe    L14
  movsd  D164(%rip),%xmm1
  mulsd  %xmm1,%xmm0
  addsd  %xmm1,%xmm0
  ret
L51:
  movapd %xmm1,%xmm3
  mulsd  %xmm1,%xmm3
  movapd %xmm3,%xmm0
  mulsd  D165(%rip),%xmm0
  subsd  D233(%rip),%xmm0
  mulsd  %xmm3,%xmm0
  addsd  D140(%rip),%xmm0
  mulsd  %xmm3,%xmm0
  subsd  D172(%rip),%xmm0
  mulsd  %xmm3,%xmm0
  addsd  D308(%rip),%xmm0
  mulsd  %xmm3,%xmm0
  subsd  D237(%rip),%xmm0
  mulsd  %xmm3,%xmm0
  addsd  D88(%rip),%xmm0
  mulsd  %xmm3,%xmm0
  subsd  D44(%rip),%xmm0
  mulsd  %xmm3,%xmm0
  addsd  D16(%rip),%xmm0
  addsd  %xmm0,%xmm0
  mulsd  %xmm1,%xmm0
  jmp    L16
L14:
  movsd  D164(%rip),%xmm1
  movapd %xmm0,%xmm2
  mulsd  %xmm1,%xmm2
  subsd  %xmm2,%xmm1
  movapd %xmm1,%xmm0
L40:
  ret
```

tool_calls: name: parse_data
arguments: data_tag: D27
type_guessed: f64
name: parse_data
arguments: data_tag: D164
type_guessed: f64
name: parse_data
arguments: data_tag: D214
type_guessed: qword[2]
name: parse_data
arguments: data_tag: D144
type_guessed: f64[2]
name: parse_data
arguments: data_tag: D335
type_guessed: f64
name: parse_data
arguments: data_tag: D129
type_guessed: f64
name: parse_data
arguments: data_tag: D226
type_guessed: byte[8]
name: parse_data
arguments: data_tag: D307
type_guessed: f64
name: parse_data
arguments: data_tag: D339
type_guessed: f64
name: parse_data
arguments: data_tag: D66
type_guessed: f64
name: parse_data
arguments: data_tag: D2
type_guessed: f64
name: parse_data
arguments: data_tag: D86
type_guessed: f64
name: parse_data
arguments: data_tag: D152
type_guessed: f64
name: parse_data
arguments: data_tag: D127
type_guessed: f64
name: parse_data
arguments: data_tag: D186
type_guessed: f64
name: parse_data
arguments: data_tag: D150
type_guessed: f64
name: parse_data
arguments: data_tag: D322
type_guessed: f64
name: parse_data
arguments: data_tag: D64
type_guessed: f64
name: parse_data
arguments: data_tag: D78
type_guessed: f64
name: parse_data
arguments: data_tag: D7
type_guessed: f64
name: parse_data
arguments: data_tag: D123
type_guessed: f64
name: parse_data
arguments: data_tag: D165
type_guessed: f64
name: parse_data
arguments: data_tag: D233
type_guessed: f64
name: parse_data
arguments: data_tag: D140
type_guessed: f64
name: parse_data
arguments: data_tag: D172
type_guessed: f64
name: parse_data
arguments: data_tag: D308
type_guessed: f64
name: parse_data
arguments: data_tag: D237
type_guessed: f64
name: parse_data
arguments: data_tag: D88
type_guessed: f64
name: parse_data
arguments: data_tag: D44
type_guessed: f64
name: parse_data
arguments: data_tag: D16
type_guessed: f64

tool: D27: 0

tool: D164: 0.5

tool: {"D214": [0x7fffffffffffffff,0x0000000000000000]}

tool: {"D144": [3.0,1.0]}

tool: D335: 1

tool: D129: 2

tool: {"D226": [0x33,0x67,0x58,0x9a,0x1c,0xba,0x07,0xbf]}

tool: D307: 0.00015252929

tool: D339: 1.9538132e-05

tool: D66: 0.000676904986

tool: D2: 0.001390604284

tool: D86: 0.00079462082

tool: D152: 0.002034254874

tool: D127: 0.006549791214

tool: D186: 0.010557625006

tool: D150: 0.011630447319

tool: D322: 0.009279453341

tool: D64: 0.005353579108

tool: D78: 0.002141268741

tool: D7: 0.000535310849

tool: D123: 0.999936657524

tool: D165: 0.000124818987

tool: D233: 0.001075204047

tool: D140: 0.005198775019

tool: D172: 0.019198292004

tool: D308: 0.059054035642

tool: D237: 0.151968751364

tool: D88: 0.319152932694

tool: D44: 0.5319230073

tool: D16: 0.797884560593

assistant: ```c
double zcdf(double z) {
  double w;
  double x;
  double y;
  double result;
  if (z == 0.0)
    return 0.5;
  y = fabs(z) / 2.0;
  if (y >= 3.0)
    return 0.0;
  if (y < 1.0) {
    w = y * y;
    x = 0.000124818987;
    x = x * w - 0.001075204047;
    x = x * w + 0.005198775019;
    x = x * w - 0.019198292004;
    x = x * w + 0.059054035642;
    x = x * w - 0.151968751364;
    x = x * w + 0.319152932694;
    x = x * w - 0.531923007300;
    x = x * w + 0.797884560593;
    x = x * 2.0 * y;
  } else {
    y -= 2.0;
    x = -0.000045255659;
    x = x * y + 0.000152529290;
    x = x * y - 0.000019538132;
    x = x * y - 0.000676904986;
    x = x * y + 0.001390604284;
    x = x * y - 0.000794620820;
    x = x * y - 0.002034254874;
    x = x * y + 0.006549791214;
    x = x * y - 0.010557625006;
    x = x * y + 0.011630447319;
    x = x * y - 0.009279453341;
    x = x * y + 0.005353579108;
    x = x * y - 0.002141268741;
    x = x * y + 0.000535310849;
    x = x * y + 0.999936657524;
  }
  if (z > 0.0) {
    result = (x / 2.0) + 0.5;
  } else {
    result = (0.5 - (x / 2.0));
  }
  return result;
}
```