user: 请将以下的汇编代码转换成C语言代码：

```asm
<bessi1_salahat>:
  endbr64
  sub    $0x18,%rsp
  movapd %xmm0,%xmm1
  movsd  D210(%rip),%xmm0
  comisd %xmm1,%xmm0
  ja     L15
  movsd  D10(%rip),%xmm0
  comisd %xmm1,%xmm0
  ja     L24
  movsd  D216(%rip),%xmm0
  movsd  %xmm1,0x8(%rsp)
  comisd %xmm1,%xmm0
  movapd %xmm1,%xmm0
  ja     L7
  mulsd  D252(%rip),%xmm0
  call   <expl@plt>
  movsd  0x8(%rsp),%xmm1
  movsd  %xmm0,(%rsp)
  movsd  D217(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  call   <expl@plt>
  movsd  (%rsp),%xmm2
  mulsd  D164(%rip),%xmm0
  mulsd  D302(%rip),%xmm2
  movsd  0x8(%rsp),%xmm1
  addsd  %xmm0,%xmm2
  movsd  D188(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm2,(%rsp)
  call   <expl@plt>
  movsd  0x8(%rsp),%xmm1
  mulsd  D89(%rip),%xmm1
  mulsd  D312(%rip),%xmm0
  addsd  (%rsp),%xmm0
  movsd  %xmm0,(%rsp)
  movapd %xmm1,%xmm0
  call   <expl@plt>
  mulsd  D233(%rip),%xmm0
  movsd  (%rsp),%xmm6
  addsd  %xmm0,%xmm6
  movsd  %xmm6,(%rsp)
  fldl   (%rsp)
  add    $0x18,%rsp
  ret
  nopl   0x0(%rax)
L7:
  mulsd  D229(%rip),%xmm0
  call   <expl@plt>
  movsd  0x8(%rsp),%xmm1
  movsd  %xmm0,(%rsp)
  movsd  D32(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  call   <expl@plt>
  movsd  (%rsp),%xmm2
  mulsd  D339(%rip),%xmm0
  mulsd  D244(%rip),%xmm2
  movsd  0x8(%rsp),%xmm1
  addsd  %xmm0,%xmm2
  movsd  D177(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm2,(%rsp)
  call   <expl@plt>
  movsd  0x8(%rsp),%xmm1
  mulsd  D181(%rip),%xmm1
  mulsd  D173(%rip),%xmm0
  addsd  (%rsp),%xmm0
  movsd  %xmm0,(%rsp)
  movapd %xmm1,%xmm0
  call   <expl@plt>
  mulsd  D338(%rip),%xmm0
  movsd  (%rsp),%xmm4
  addsd  %xmm0,%xmm4
  movsd  %xmm4,(%rsp)
  fldl   (%rsp)
  add    $0x18,%rsp
  ret
  nopl   (%rax)
L15:
  movapd %xmm1,%xmm0
  movsd  %xmm1,0x8(%rsp)
  mulsd  D256(%rip),%xmm0
  call   <expl@plt>
  movsd  0x8(%rsp),%xmm1
  movsd  %xmm0,(%rsp)
  movsd  D321(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  call   <expl@plt>
  movsd  (%rsp),%xmm2
  mulsd  D78(%rip),%xmm0
  mulsd  D92(%rip),%xmm2
  movsd  0x8(%rsp),%xmm1
  addsd  %xmm0,%xmm2
  movsd  D50(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm2,(%rsp)
  call   <expl@plt>
  movsd  0x8(%rsp),%xmm1
  mulsd  D207(%rip),%xmm1
  mulsd  D14(%rip),%xmm0
  addsd  (%rsp),%xmm0
  movsd  %xmm0,(%rsp)
  movapd %xmm1,%xmm0
  call   <expl@plt>
  mulsd  D298(%rip),%xmm0
  movsd  (%rsp),%xmm3
  addsd  %xmm0,%xmm3
  movsd  %xmm3,(%rsp)
  fldl   (%rsp)
  add    $0x18,%rsp
  ret
  nop
L24:
  movapd %xmm1,%xmm0
  movsd  %xmm1,0x8(%rsp)
  mulsd  D268(%rip),%xmm0
  call   <expl@plt>
  movsd  0x8(%rsp),%xmm1
  movsd  %xmm0,(%rsp)
  movsd  D17(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  call   <expl@plt>
  movsd  (%rsp),%xmm2
  mulsd  D73(%rip),%xmm0
  mulsd  D147(%rip),%xmm2
  movsd  0x8(%rsp),%xmm1
  addsd  %xmm0,%xmm2
  movsd  D266(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm2,(%rsp)
  call   <expl@plt>
  movsd  0x8(%rsp),%xmm1
  mulsd  D281(%rip),%xmm1
  mulsd  D316(%rip),%xmm0
  addsd  (%rsp),%xmm0
  movsd  %xmm0,(%rsp)
  movapd %xmm1,%xmm0
  call   <expl@plt>
  mulsd  D327(%rip),%xmm0
  movsd  (%rsp),%xmm5
  addsd  %xmm0,%xmm5
  movsd  %xmm5,(%rsp)
  fldl   (%rsp)
  add    $0x18,%rsp
  ret
```

tool_calls: name: read_data
arguments: data_label: D210
type_infered: f64
name: read_data
arguments: data_label: D10
type_infered: byte[8]
name: read_data
arguments: data_label: D216
type_infered: f64
name: read_data
arguments: data_label: D252
type_infered: f64
name: read_data
arguments: data_label: D217
type_infered: f64
name: read_data
arguments: data_label: D164
type_infered: byte[8]
name: read_data
arguments: data_label: D302
type_infered: byte[8]
name: read_data
arguments: data_label: D188
type_infered: f64
name: read_data
arguments: data_label: D89
type_infered: f64
name: read_data
arguments: data_label: D312
type_infered: byte[8]
name: read_data
arguments: data_label: D233
type_infered: byte[8]
name: read_data
arguments: data_label: D229
type_infered: f64
name: read_data
arguments: data_label: D32
type_infered: f64
name: read_data
arguments: data_label: D339
type_infered: byte[8]
name: read_data
arguments: data_label: D244
type_infered: byte[8]
name: read_data
arguments: data_label: D177
type_infered: f64
name: read_data
arguments: data_label: D181
type_infered: f64
name: read_data
arguments: data_label: D173
type_infered: byte[8]
name: read_data
arguments: data_label: D338
type_infered: byte[8]
name: read_data
arguments: data_label: D256
type_infered: f64
name: read_data
arguments: data_label: D321
type_infered: f64
name: read_data
arguments: data_label: D78
type_infered: byte[8]
name: read_data
arguments: data_label: D92
type_infered: byte[8]
name: read_data
arguments: data_label: D50
type_infered: byte[8]
name: read_data
arguments: data_label: D207
type_infered: f64
name: read_data
arguments: data_label: D14
type_infered: byte[8]
name: read_data
arguments: data_label: D298
type_infered: byte[8]
name: read_data
arguments: data_label: D268
type_infered: f64
name: read_data
arguments: data_label: D17
type_infered: byte[8]
name: read_data
arguments: data_label: D73
type_infered: byte[8]
name: read_data
arguments: data_label: D147
type_infered: byte[8]
name: read_data
arguments: data_label: D266
type_infered: f64
name: read_data
arguments: data_label: D281
type_infered: f64
name: read_data
arguments: data_label: D316
type_infered: byte[8]
name: read_data
arguments: data_label: D327
type_infered: byte[8]

tool: D210: 11.5

tool: {"D10": [0x00,0x00,0x00,0x00,0x00,0x00,0x34,0x40]}

tool: D216: 37.25

tool: D252: 1.144

tool: D217: 0.995

tool: {"D164": [0x14,0x06,0x65,0x1a,0x4d,0x2e,0xb1,0x3f]}

tool: {"D302": [0xda,0xf5,0x21,0x8a,0xcb,0xae,0x27,0x3e]}

tool: D188: 0.5686

tool: D89: 0.946

tool: {"D312": [0x79,0x5a,0xa4,0xa7,0xcd,0xda,0x9f,0x3f]}

tool: {"D233": [0xff,0x3f,0xca,0x5f,0x8c,0x0e,0xb3,0x3f]}

tool: D229: 0.9807

tool: D32: 0.8672

tool: {"D339": [0x3b,0x93,0xec,0xc7,0xdc,0x6b,0xb7,0x3f]}

tool: {"D244": [0xbc,0xa5,0x49,0xe7,0xcb,0x24,0xbc,0x3f]}

tool: D177: 1.0795

tool: D181: 1.0385

tool: {"D173": [0x8e,0x4b,0xc9,0x30,0xf6,0x77,0x29,0xbf]}

tool: {"D338": [0x2d,0x76,0x5e,0xd7,0xed,0xbb,0x6b,0x3f]}

tool: D256: 0.7536

tool: D321: 0.9739

tool: {"D78": [0x2e,0xd2,0x9b,0xbc,0x8e,0x59,0xc2,0x3f]}

tool: {"D92": [0x8c,0x65,0x7e,0x5e,0x86,0x39,0xc0,0x3f]}

tool: {"D50": [0xe1,0x7a,0x14,0xae,0x47,0xe1,0xe6,0xbf]}

tool: D207: 0.2343

tool: {"D14": [0x3e,0xe8,0xd9,0xac,0xfa,0x5c,0xd4,0xbf]}

tool: {"D298": [0x50,0x67,0xf6,0x92,0x29,0x93,0xac,0x3f]}

tool: D268: 0.471

tool: {"D17": [0xcd,0xcc,0xcc,0xcc,0xcc,0x6c,0x64,0xc0]}

tool: {"D73": [0xbe,0xd9,0xe6,0xc6,0xf4,0x14,0x54,0xc0]}

tool: {"D147": [0x60,0x9c,0xae,0xdd,0x2c,0x14,0xc0,0x3f]}

tool: D266: 0.9852

tool: D281: 0.8554

tool: {"D316": [0x8d,0x06,0x95,0x5d,0xd5,0xfe,0xbb,0x3f]}

tool: {"D327": [0xaf,0x81,0x42,0x77,0x28,0x8e,0xbc,0x3f]}

assistant: ```c
long double bessi1_salahat(double x) {
  if (x < 11.5)
    return 0.1682 * 0.7536 * expl(x * 0.7536) + 0.1472 * 0.9739 * expl(x * 0.9739) + 0.4450 * -0.715 * expl(x * -0.715) + 0.2382 * 0.2343 * expl(x * 0.2343);
  else if (x < 20)
    return 0.2667 * 0.4710 * expl(x * 0.4710) + 0.4916 * -163.4 * expl(x * -163.4) + 0.1110 * 0.9852 * expl(x * 0.9852) + 0.1304 * 0.8554 * expl(x * 0.8554);
  else if (x < 37.25)
    return 0.1121 * 0.9807 * expl(x * 0.9807) + 0.1055 * 0.8672 * expl(x * 0.8672) + -0.00018 * 1.0795 * expl(x * 1.0795) + 0.00326 * 1.0385 * expl(x * 1.0385);
  else
    return 2.41E-9 * 1.144 * expl(x * 1.144) + 0.06745 * 0.995 * expl(x * 0.995) + 0.05471 * 0.5686 * expl(x * 0.5686) + 0.07869 * 0.946 * expl(x * 0.946);
}
```