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

```asm
<confid>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x250,%rsp
  mov    %edi,-0x244(%rbp)
  mov    %esi,-0x248(%rbp)
  mov    %fs:0x28,%rax
  mov    %rax,-0x8(%rbp)
  xor    %eax,%eax
  movsd  D236(%rip),%xmm0
  movsd  %xmm0,-0x118(%rbp)
  movsd  D213(%rip),%xmm0
  movsd  %xmm0,-0x110(%rbp)
  movsd  D337(%rip),%xmm0
  movsd  %xmm0,-0x108(%rbp)
  movsd  D104(%rip),%xmm0
  movsd  %xmm0,-0x100(%rbp)
  movsd  D314(%rip),%xmm0
  movsd  %xmm0,-0xf8(%rbp)
  movsd  D24(%rip),%xmm0
  movsd  %xmm0,-0xf0(%rbp)
  movsd  D195(%rip),%xmm0
  movsd  %xmm0,-0xe8(%rbp)
  movsd  D461(%rip),%xmm0
  movsd  %xmm0,-0xe0(%rbp)
  movsd  D293(%rip),%xmm0
  movsd  %xmm0,-0xd8(%rbp)
  movsd  D88(%rip),%xmm0
  movsd  %xmm0,-0xd0(%rbp)
  movsd  D215(%rip),%xmm0
  movsd  %xmm0,-0xc8(%rbp)
  movsd  D395(%rip),%xmm0
  movsd  %xmm0,-0xc0(%rbp)
  movsd  D234(%rip),%xmm0
  movsd  %xmm0,-0xb8(%rbp)
  movsd  D227(%rip),%xmm0
  movsd  %xmm0,-0xb0(%rbp)
  movsd  D222(%rip),%xmm0
  movsd  %xmm0,-0xa8(%rbp)
  movsd  D544(%rip),%xmm0
  movsd  %xmm0,-0xa0(%rbp)
  movsd  D579(%rip),%xmm0
  movsd  %xmm0,-0x98(%rbp)
  movsd  D274(%rip),%xmm0
  movsd  %xmm0,-0x90(%rbp)
  movsd  D593(%rip),%xmm0
  movsd  %xmm0,-0x88(%rbp)
  movsd  D256(%rip),%xmm0
  movsd  %xmm0,-0x80(%rbp)
  movsd  D163(%rip),%xmm0
  movsd  %xmm0,-0x78(%rbp)
  movsd  D35(%rip),%xmm0
  movsd  %xmm0,-0x70(%rbp)
  movsd  D260(%rip),%xmm0
  movsd  %xmm0,-0x68(%rbp)
  movsd  D411(%rip),%xmm0
  movsd  %xmm0,-0x60(%rbp)
  movsd  D157(%rip),%xmm0
  movsd  %xmm0,-0x58(%rbp)
  movsd  D64(%rip),%xmm0
  movsd  %xmm0,-0x50(%rbp)
  movsd  D362(%rip),%xmm0
  movsd  %xmm0,-0x48(%rbp)
  movsd  D364(%rip),%xmm0
  movsd  %xmm0,-0x40(%rbp)
  movsd  D386(%rip),%xmm0
  movsd  %xmm0,-0x38(%rbp)
  movsd  D25(%rip),%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  D505(%rip),%xmm0
  movsd  %xmm0,-0x238(%rbp)
  movsd  D567(%rip),%xmm0
  movsd  %xmm0,-0x230(%rbp)
  movsd  D387(%rip),%xmm0
  movsd  %xmm0,-0x228(%rbp)
  movsd  D271(%rip),%xmm0
  movsd  %xmm0,-0x220(%rbp)
  movsd  D240(%rip),%xmm0
  movsd  %xmm0,-0x218(%rbp)
  movsd  D160(%rip),%xmm0
  movsd  %xmm0,-0x210(%rbp)
  movsd  D53(%rip),%xmm0
  movsd  %xmm0,-0x208(%rbp)
  movsd  D315(%rip),%xmm0
  movsd  %xmm0,-0x200(%rbp)
  movsd  D457(%rip),%xmm0
  movsd  %xmm0,-0x1f8(%rbp)
  movsd  D572(%rip),%xmm0
  movsd  %xmm0,-0x1f0(%rbp)
  movsd  D110(%rip),%xmm0
  movsd  %xmm0,-0x1e8(%rbp)
  movsd  D263(%rip),%xmm0
  movsd  %xmm0,-0x1e0(%rbp)
  movsd  D143(%rip),%xmm0
  movsd  %xmm0,-0x1d8(%rbp)
  movsd  D79(%rip),%xmm0
  movsd  %xmm0,-0x1d0(%rbp)
  movsd  D252(%rip),%xmm0
  movsd  %xmm0,-0x1c8(%rbp)
  movsd  D133(%rip),%xmm0
  movsd  %xmm0,-0x1c0(%rbp)
  movsd  D232(%rip),%xmm0
  movsd  %xmm0,-0x1b8(%rbp)
  movsd  D149(%rip),%xmm0
  movsd  %xmm0,-0x1b0(%rbp)
  movsd  D177(%rip),%xmm0
  movsd  %xmm0,-0x1a8(%rbp)
  movsd  D235(%rip),%xmm0
  movsd  %xmm0,-0x1a0(%rbp)
  movsd  D112(%rip),%xmm0
  movsd  %xmm0,-0x198(%rbp)
  movsd  D499(%rip),%xmm0
  movsd  %xmm0,-0x190(%rbp)
  movsd  D297(%rip),%xmm0
  movsd  %xmm0,-0x188(%rbp)
  movsd  D322(%rip),%xmm0
  movsd  %xmm0,-0x180(%rbp)
  movsd  D55(%rip),%xmm0
  movsd  %xmm0,-0x178(%rbp)
  movsd  D192(%rip),%xmm0
  movsd  %xmm0,-0x170(%rbp)
  movsd  D508(%rip),%xmm0
  movsd  %xmm0,-0x168(%rbp)
  movsd  D106(%rip),%xmm0
  movsd  %xmm0,-0x160(%rbp)
  movsd  D557(%rip),%xmm0
  movsd  %xmm0,-0x158(%rbp)
  movsd  D237(%rip),%xmm0
  movsd  %xmm0,-0x150(%rbp)
  cmpl   $0x5f,-0x244(%rbp)
  jne    L14
  mov    -0x248(%rbp),%eax
  cltq
  movsd  -0x120(%rbp,%rax,8),%xmm0
  jmp    L45
L14:
  cmpl   $0x63,-0x244(%rbp)
  jne    L39
  mov    -0x248(%rbp),%eax
  cltq
  movsd  -0x240(%rbp,%rax,8),%xmm0
  jmp    L45
L39:
  pxor   %xmm0,%xmm0
L45:
  movq   %xmm0,%rax
  mov    -0x8(%rbp),%rdx
  sub    %fs:0x28,%rdx
  je     L37
  call   <__stack_chk_fail@plt>
L37:
  movq   %rax,%xmm0
  leave
  ret
```

tool_calls: name: read_data
arguments: data_tag: D236
data_type: f64
name: read_data
arguments: data_tag: D213
data_type: f64
name: read_data
arguments: data_tag: D337
data_type: f64
name: read_data
arguments: data_tag: D104
data_type: f64
name: read_data
arguments: data_tag: D314
data_type: f64
name: read_data
arguments: data_tag: D24
data_type: f64
name: read_data
arguments: data_tag: D195
data_type: f64
name: read_data
arguments: data_tag: D461
data_type: f64
name: read_data
arguments: data_tag: D293
data_type: f64
name: read_data
arguments: data_tag: D88
data_type: f64
name: read_data
arguments: data_tag: D215
data_type: f64
name: read_data
arguments: data_tag: D395
data_type: f64
name: read_data
arguments: data_tag: D234
data_type: f64
name: read_data
arguments: data_tag: D227
data_type: f64
name: read_data
arguments: data_tag: D222
data_type: f64
name: read_data
arguments: data_tag: D544
data_type: f64
name: read_data
arguments: data_tag: D579
data_type: f64
name: read_data
arguments: data_tag: D274
data_type: f64
name: read_data
arguments: data_tag: D593
data_type: f64
name: read_data
arguments: data_tag: D256
data_type: f64
name: read_data
arguments: data_tag: D163
data_type: f64
name: read_data
arguments: data_tag: D35
data_type: f64
name: read_data
arguments: data_tag: D260
data_type: f64
name: read_data
arguments: data_tag: D411
data_type: f64
name: read_data
arguments: data_tag: D157
data_type: f64
name: read_data
arguments: data_tag: D64
data_type: f64
name: read_data
arguments: data_tag: D362
data_type: f64
name: read_data
arguments: data_tag: D364
data_type: f64
name: read_data
arguments: data_tag: D386
data_type: f64
name: read_data
arguments: data_tag: D25
data_type: f64
name: read_data
arguments: data_tag: D505
data_type: f64
name: read_data
arguments: data_tag: D567
data_type: f64
name: read_data
arguments: data_tag: D387
data_type: f64
name: read_data
arguments: data_tag: D271
data_type: f64
name: read_data
arguments: data_tag: D240
data_type: f64
name: read_data
arguments: data_tag: D160
data_type: f64
name: read_data
arguments: data_tag: D53
data_type: f64
name: read_data
arguments: data_tag: D315
data_type: f64
name: read_data
arguments: data_tag: D457
data_type: f64
name: read_data
arguments: data_tag: D572
data_type: f64
name: read_data
arguments: data_tag: D110
data_type: f64
name: read_data
arguments: data_tag: D263
data_type: f64
name: read_data
arguments: data_tag: D143
data_type: f64
name: read_data
arguments: data_tag: D79
data_type: f64
name: read_data
arguments: data_tag: D252
data_type: f64
name: read_data
arguments: data_tag: D133
data_type: f64
name: read_data
arguments: data_tag: D232
data_type: f64
name: read_data
arguments: data_tag: D149
data_type: f64
name: read_data
arguments: data_tag: D177
data_type: f64
name: read_data
arguments: data_tag: D235
data_type: f64
name: read_data
arguments: data_tag: D112
data_type: f64
name: read_data
arguments: data_tag: D499
data_type: f64
name: read_data
arguments: data_tag: D297
data_type: f64
name: read_data
arguments: data_tag: D322
data_type: f64
name: read_data
arguments: data_tag: D55
data_type: f64
name: read_data
arguments: data_tag: D192
data_type: f64
name: read_data
arguments: data_tag: D508
data_type: f64
name: read_data
arguments: data_tag: D106
data_type: f64
name: read_data
arguments: data_tag: D557
data_type: f64
name: read_data
arguments: data_tag: D237
data_type: f64

tool: D236: 12.706

tool: D213: 4.303

tool: D337: 3.182

tool: D104: 2.776

tool: D314: 2.571

tool: D24: 2.447

tool: D195: 2.365

tool: D461: 2.306

tool: D293: 2.262

tool: D88: 2.228

tool: D215: 2.201

tool: D395: 2.179

tool: D234: 2.16

tool: D227: 2.145

tool: D222: 2.131

tool: D544: 2.12

tool: D579: 2.11

tool: D274: 2.101

tool: D593: 2.093

tool: D256: 2.086

tool: D163: 2.08

tool: D35: 2.074

tool: D260: 2.069

tool: D411: 2.064

tool: D157: 2.06

tool: D64: 2.056

tool: D362: 2.052

tool: D364: 2.048

tool: D386: 2.045

tool: D25: 2.042

tool: D505: 63.657

tool: D567: 9.925

tool: D387: 5.841

tool: D271: 4.604

tool: D240: 4.032

tool: D160: 3.707

tool: D53: 3.499

tool: D315: 3.355

tool: D457: 3.25

tool: D572: 3.169

tool: D110: 3.106

tool: D263: 3.055

tool: D143: 3.012

tool: D79: 2.977

tool: D252: 2.947

tool: D133: 2.921

tool: D232: 2.898

tool: D149: 2.878

tool: D177: 2.861

tool: D235: 2.845

tool: D112: 2.831

tool: D499: 2.819

tool: D297: 2.807

tool: D322: 2.797

tool: D55: 2.787

tool: D192: 2.779

tool: D508: 2.771

tool: D106: 2.763

tool: D557: 2.756

tool: D237: 2.75

assistant: ```c
double confid(int level, int freedom) {
  double t99[35], t95[35];
  t95[1] = 12.706;
  t95[2] = 4.303;
  t95[3] = 3.182;
  t95[4] = 2.776;
  t95[5] = 2.571;
  t95[6] = 2.447;
  t95[7] = 2.365;
  t95[8] = 2.306;
  t95[9] = 2.262;
  t95[10] = 2.228;
  t95[11] = 2.201;
  t95[12] = 2.179;
  t95[13] = 2.160;
  t95[14] = 2.145;
  t95[15] = 2.131;
  t95[16] = 2.120;
  t95[17] = 2.110;
  t95[18] = 2.101;
  t95[19] = 2.093;
  t95[20] = 2.086;
  t95[21] = 2.080;
  t95[22] = 2.074;
  t95[23] = 2.069;
  t95[24] = 2.064;
  t95[25] = 2.060;
  t95[26] = 2.056;
  t95[27] = 2.052;
  t95[28] = 2.048;
  t95[29] = 2.045;
  t95[30] = 2.042;
  t99[1] = 63.657;
  t99[2] = 9.925;
  t99[3] = 5.841;
  t99[4] = 4.604;
  t99[5] = 4.032;
  t99[6] = 3.707;
  t99[7] = 3.499;
  t99[8] = 3.355;
  t99[9] = 3.250;
  t99[10] = 3.169;
  t99[11] = 3.106;
  t99[12] = 3.055;
  t99[13] = 3.012;
  t99[14] = 2.977;
  t99[15] = 2.947;
  t99[16] = 2.921;
  t99[17] = 2.898;
  t99[18] = 2.878;
  t99[19] = 2.861;
  t99[20] = 2.845;
  t99[21] = 2.831;
  t99[22] = 2.819;
  t99[23] = 2.807;
  t99[24] = 2.797;
  t99[25] = 2.787;
  t99[26] = 2.779;
  t99[27] = 2.771;
  t99[28] = 2.763;
  t99[29] = 2.756;
  t99[30] = 2.750;
  if (level == 95) {
    return (t95[freedom]);
  } else if (level == 99) {
    return (t99[freedom]);
  } else {
    return (0);
  }
}
```