user: Demonstrate the C code that generates the assembly output below:

```asm
<delta_AT>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  movsd  %xmm0,-0x18(%rbp)
  movsd  D189(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x18(%rbp),%xmm0
  movsd  D287(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x18(%rbp)
  movsd  -0x18(%rbp),%xmm0
  comisd D91(%rip),%xmm0
  jb     L219
  movsd  D413(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L219:
  movsd  -0x18(%rbp),%xmm0
  comisd D500(%rip),%xmm0
  jb     L4
  movsd  D269(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L4:
  movsd  -0x18(%rbp),%xmm0
  comisd D372(%rip),%xmm0
  jb     L161
  movsd  D428(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L161:
  movsd  -0x18(%rbp),%xmm0
  comisd D320(%rip),%xmm0
  jb     L111
  movsd  D224(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L111:
  movsd  -0x18(%rbp),%xmm0
  comisd D511(%rip),%xmm0
  jb     L85
  movsd  D304(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L85:
  movsd  -0x18(%rbp),%xmm0
  comisd D0(%rip),%xmm0
  jb     L184
  movsd  D289(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L184:
  movsd  -0x18(%rbp),%xmm0
  comisd D421(%rip),%xmm0
  jb     L93
  movsd  D175(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L93:
  movsd  -0x18(%rbp),%xmm0
  comisd D282(%rip),%xmm0
  jb     L233
  movsd  D358(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L233:
  movsd  -0x18(%rbp),%xmm0
  comisd D106(%rip),%xmm0
  jb     L208
  movsd  D443(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L208:
  movsd  -0x18(%rbp),%xmm0
  comisd D350(%rip),%xmm0
  jb     L214
  movsd  D3(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L214:
  movsd  -0x18(%rbp),%xmm0
  comisd D370(%rip),%xmm0
  jb     L178
  movsd  D169(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L178:
  movsd  -0x18(%rbp),%xmm0
  comisd D53(%rip),%xmm0
  jb     L133
  movsd  D58(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L133:
  movsd  -0x18(%rbp),%xmm0
  comisd D457(%rip),%xmm0
  jb     L186
  movsd  D365(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L186:
  movsd  -0x18(%rbp),%xmm0
  comisd D39(%rip),%xmm0
  jb     L62
  movsd  D352(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L62:
  movsd  -0x18(%rbp),%xmm0
  comisd D393(%rip),%xmm0
  jb     L188
  movsd  D427(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L188:
  movsd  -0x18(%rbp),%xmm0
  comisd D441(%rip),%xmm0
  jb     L189
  movsd  D93(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L189:
  movsd  -0x18(%rbp),%xmm0
  comisd D65(%rip),%xmm0
  jb     L35
  movsd  D216(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L35:
  movsd  -0x18(%rbp),%xmm0
  comisd D404(%rip),%xmm0
  jb     L42
  movsd  D246(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L42:
  movsd  -0x18(%rbp),%xmm0
  comisd D109(%rip),%xmm0
  jb     L9
  movsd  D26(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L9:
  movsd  -0x18(%rbp),%xmm0
  comisd D126(%rip),%xmm0
  jb     L14
  movsd  D337(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L14:
  movsd  -0x18(%rbp),%xmm0
  comisd D503(%rip),%xmm0
  jb     L238
  movsd  D384(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L238:
  movsd  -0x18(%rbp),%xmm0
  comisd D455(%rip),%xmm0
  jb     L66
  movsd  D360(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L66:
  movsd  -0x18(%rbp),%xmm0
  comisd D166(%rip),%xmm0
  jb     L50
  movsd  D125(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L50:
  movsd  -0x18(%rbp),%xmm0
  comisd D210(%rip),%xmm0
  jb     L138
  movsd  D445(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L138:
  movsd  -0x18(%rbp),%xmm0
  comisd D425(%rip),%xmm0
  jb     L126
  movsd  D331(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
L126:
  movsd  -0x8(%rbp),%xmm0
  movq   %xmm0,%rax
  movq   %rax,%xmm0
  pop    %rbp
  ret
```

tool_calls: name: extract_symbolic_data
arguments: tag: D189
datatype: f64
name: extract_symbolic_data
arguments: tag: D287
datatype: f64
name: extract_symbolic_data
arguments: tag: D91
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D413
datatype: f64
name: extract_symbolic_data
arguments: tag: D500
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D269
datatype: f64
name: extract_symbolic_data
arguments: tag: D372
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D428
datatype: f64
name: extract_symbolic_data
arguments: tag: D320
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D224
datatype: f64
name: extract_symbolic_data
arguments: tag: D511
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D304
datatype: f64
name: extract_symbolic_data
arguments: tag: D0
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D289
datatype: f64
name: extract_symbolic_data
arguments: tag: D421
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D175
datatype: f64
name: extract_symbolic_data
arguments: tag: D282
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D358
datatype: f64
name: extract_symbolic_data
arguments: tag: D106
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D443
datatype: f64
name: extract_symbolic_data
arguments: tag: D350
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D3
datatype: f64
name: extract_symbolic_data
arguments: tag: D370
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D169
datatype: f64
name: extract_symbolic_data
arguments: tag: D53
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D58
datatype: f64
name: extract_symbolic_data
arguments: tag: D457
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D365
datatype: f64
name: extract_symbolic_data
arguments: tag: D39
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D352
datatype: f64
name: extract_symbolic_data
arguments: tag: D393
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D427
datatype: f64
name: extract_symbolic_data
arguments: tag: D441
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D93
datatype: f64
name: extract_symbolic_data
arguments: tag: D65
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D216
datatype: f64
name: extract_symbolic_data
arguments: tag: D404
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D246
datatype: f64
name: extract_symbolic_data
arguments: tag: D109
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D26
datatype: f64
name: extract_symbolic_data
arguments: tag: D126
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D337
datatype: f64
name: extract_symbolic_data
arguments: tag: D503
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D384
datatype: f64
name: extract_symbolic_data
arguments: tag: D455
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D360
datatype: f64
name: extract_symbolic_data
arguments: tag: D166
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D125
datatype: f64
name: extract_symbolic_data
arguments: tag: D210
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D445
datatype: f64
name: extract_symbolic_data
arguments: tag: D425
datatype: f64[2]
name: extract_symbolic_data
arguments: tag: D331
datatype: f64

tool: D189: 10

tool: D287: 2400000.5

tool: {"D91": [41499.0,11.0]}

tool: D413: 11

tool: {"D500": [41683.0,12.0]}

tool: D269: 12

tool: {"D372": [42048.0,13.0]}

tool: D428: 13

tool: {"D320": [42413.0,14.0]}

tool: D224: 14

tool: {"D511": [42778.0,15.0]}

tool: D304: 15

tool: {"D0": [43144.0,16.0]}

tool: D289: 16

tool: {"D421": [43509.0,17.0]}

tool: D175: 17

tool: {"D282": [43874.0,18.0]}

tool: D358: 18

tool: {"D106": [44239.0,19.0]}

tool: D443: 19

tool: {"D350": [44786.0,20.0]}

tool: D3: 20

tool: {"D370": [45151.0,21.0]}

tool: D169: 21

tool: {"D53": [45516.0,22.0]}

tool: D58: 22

tool: {"D457": [46247.0,23.0]}

tool: D365: 23

tool: {"D39": [47161.0,24.0]}

tool: D352: 24

tool: {"D393": [47892.0,25.0]}

tool: D427: 25

tool: {"D441": [48257.0,26.0]}

tool: D93: 26

tool: {"D65": [48804.0,27.0]}

tool: D216: 27

tool: {"D404": [49169.0,28.0]}

tool: D246: 28

tool: {"D109": [49534.0,29.0]}

tool: D26: 29

tool: {"D126": [50083.0,30.0]}

tool: D337: 30

tool: {"D503": [50630.0,31.0]}

tool: D384: 31

tool: {"D455": [51179.0,32.0]}

tool: D360: 32

tool: {"D166": [53736.0,33.0]}

tool: D125: 33

tool: {"D210": [54832.0,34.0]}

tool: D445: 34

tool: {"D425": [56109.0,35.0]}

tool: D331: 35

assistant: ```c
double delta_AT(double utc) {
  double dt = 10.0;
  utc -= (2400000.5);
  if (utc >= 41499.0)
    dt = 11.0;
  if (utc >= 41683.0)
    dt = 12.0;
  if (utc >= 42048.0)
    dt = 13.0;
  if (utc >= 42413.0)
    dt = 14.0;
  if (utc >= 42778.0)
    dt = 15.0;
  if (utc >= 43144.0)
    dt = 16.0;
  if (utc >= 43509.0)
    dt = 17.0;
  if (utc >= 43874.0)
    dt = 18.0;
  if (utc >= 44239.0)
    dt = 19.0;
  if (utc >= 44786.0)
    dt = 20.0;
  if (utc >= 45151.0)
    dt = 21.0;
  if (utc >= 45516.0)
    dt = 22.0;
  if (utc >= 46247.0)
    dt = 23.0;
  if (utc >= 47161.0)
    dt = 24.0;
  if (utc >= 47892.0)
    dt = 25.0;
  if (utc >= 48257.0)
    dt = 26.0;
  if (utc >= 48804.0)
    dt = 27.0;
  if (utc >= 49169.0)
    dt = 28.0;
  if (utc >= 49534.0)
    dt = 29.0;
  if (utc >= 50083.0)
    dt = 30.0;
  if (utc >= 50630.0)
    dt = 31.0;
  if (utc >= 51179.0)
    dt = 32.0;
  if (utc >= 53736.0)
    dt = 33.0;
  if (utc >= 54832.0)
    dt = 34.0;
  if (utc >= 56109.0)
    dt = 35.0;
  return (dt);
}
```