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

```asm
<rssi_to_heat>:
  endbr64
  mov    $0x0,%eax
  movss  D36(%rip),%xmm1
  comiss %xmm0,%xmm1
  ja     L92
  pxor   %xmm1,%xmm1
  cvtss2sd %xmm0,%xmm1
  mov    $0x1,%eax
  movsd  D110(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  mov    $0x2,%eax
  movsd  D40(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  mov    $0x3,%eax
  movsd  D75(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  mov    $0x4,%eax
  movsd  D82(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  mov    $0x5,%eax
  movsd  D133(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  mov    $0x6,%eax
  movsd  D129(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  mov    $0x7,%eax
  movsd  D56(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  mov    $0x8,%eax
  movsd  D157(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  mov    $0x9,%eax
  movsd  D61(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  mov    $0xa,%eax
  movsd  D148(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  mov    $0xb,%eax
  movsd  D99(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  mov    $0xc,%eax
  movsd  D64(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  mov    $0xd,%eax
  movsd  D21(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  mov    $0xe,%eax
  movsd  D105(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  mov    $0xf,%eax
  movsd  D71(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  mov    $0x10,%eax
  movsd  D9(%rip),%xmm2
  comisd %xmm1,%xmm2
  ja     L92
  movss  D100(%rip),%xmm1
  ucomiss %xmm0,%xmm1
  setbe  %al
  movzbl %al,%eax
  add    $0x11,%eax
L92:
  ret
```

tool_calls: name: disassemble_data
arguments: data_label: D36
data_type: byte[4]
name: disassemble_data
arguments: data_label: D110
data_type: byte[8]
name: disassemble_data
arguments: data_label: D40
data_type: byte[8]
name: disassemble_data
arguments: data_label: D75
data_type: byte[8]
name: disassemble_data
arguments: data_label: D82
data_type: byte[8]
name: disassemble_data
arguments: data_label: D133
data_type: byte[8]
name: disassemble_data
arguments: data_label: D129
data_type: byte[8]
name: disassemble_data
arguments: data_label: D56
data_type: byte[8]
name: disassemble_data
arguments: data_label: D157
data_type: byte[8]
name: disassemble_data
arguments: data_label: D61
data_type: byte[8]
name: disassemble_data
arguments: data_label: D148
data_type: byte[8]
name: disassemble_data
arguments: data_label: D99
data_type: byte[8]
name: disassemble_data
arguments: data_label: D64
data_type: byte[8]
name: disassemble_data
arguments: data_label: D21
data_type: byte[8]
name: disassemble_data
arguments: data_label: D105
data_type: byte[8]
name: disassemble_data
arguments: data_label: D71
data_type: byte[8]
name: disassemble_data
arguments: data_label: D9
data_type: byte[8]
name: disassemble_data
arguments: data_label: D100
data_type: byte[4]

tool: {"D36": [0x00,0x00,0xcc,0xc2]}

tool: {"D110": [0x85,0xeb,0x51,0xb8,0x1e,0xe5,0x58,0xc0]}

tool: {"D40": [0x7b,0x14,0xae,0x47,0xe1,0x4a,0x58,0xc0]}

tool: {"D75": [0x71,0x3d,0x0a,0xd7,0xa3,0xb0,0x57,0xc0]}

tool: {"D82": [0x66,0x66,0x66,0x66,0x66,0x16,0x57,0xc0]}

tool: {"D133": [0x5c,0x8f,0xc2,0xf5,0x28,0x7c,0x56,0xc0]}

tool: {"D129": [0xe1,0x7a,0x14,0xae,0x47,0xe1,0x55,0xc0]}

tool: {"D56": [0xd7,0xa3,0x70,0x3d,0x0a,0x47,0x55,0xc0]}

tool: {"D157": [0xcd,0xcc,0xcc,0xcc,0xcc,0xac,0x54,0xc0]}

tool: {"D61": [0xc3,0xf5,0x28,0x5c,0x8f,0x12,0x54,0xc0]}

tool: {"D148": [0xb8,0x1e,0x85,0xeb,0x51,0x78,0x53,0xc0]}

tool: {"D99": [0xae,0x47,0xe1,0x7a,0x14,0xde,0x52,0xc0]}

tool: {"D64": [0x33,0x33,0x33,0x33,0x33,0x43,0x52,0xc0]}

tool: {"D21": [0x29,0x5c,0x8f,0xc2,0xf5,0xa8,0x51,0xc0]}

tool: {"D105": [0x1f,0x85,0xeb,0x51,0xb8,0x0e,0x51,0xc0]}

tool: {"D71": [0x14,0xae,0x47,0xe1,0x7a,0x74,0x50,0xc0]}

tool: {"D9": [0x14,0xae,0x47,0xe1,0x7a,0xb4,0x4f,0xc0]}

tool: {"D100": [0x00,0x00,0x74,0xc2]}

assistant: ```c
int rssi_to_heat(float rssi) {
  if (rssi < -102) {
    return 0;
  } else if (rssi < -99.58) {
    return 1;
  } else if (rssi < -97.17) {
    return 2;
  } else if (rssi < -94.76) {
    return 3;
  } else if (rssi < -92.35) {
    return 4;
  } else if (rssi < -89.94) {
    return 5;
  } else if (rssi < -87.52) {
    return 6;
  } else if (rssi < -85.11) {
    return 7;
  } else if (rssi < -82.70) {
    return 8;
  } else if (rssi < -80.29) {
    return 9;
  } else if (rssi < -77.88) {
    return 10;
  } else if (rssi < -75.47) {
    return 11;
  } else if (rssi < -73.05) {
    return 12;
  } else if (rssi < -70.64) {
    return 13;
  } else if (rssi < -68.23) {
    return 14;
  } else if (rssi < -65.82) {
    return 15;
  } else if (rssi < -63.41) {
    return 16;
  }
  if (rssi < -61.0f) {
    return 17;
  } else {
    return 18;
  }
}
```