user: What is the c source code of the assembly code below:

```asm
<nunchuk_show_ext_x>:
  endbr64
  movsd  D285(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L49
  movsd  D322(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L187
  movsd  D390(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L155
  movsd  D73(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L176
  movsd  D51(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L38
  movsd  D273(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L33
  movsd  D50(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L178
  movsd  D266(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L7
  movsd  D292(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L163
  movsd  D274(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L20
  movsd  D163(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L25
  movsd  D18(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L126
  movsd  D115(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L133
  movsd  D388(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L61
  movsd  D216(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L195
  movsd  D344(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L14
  movsd  D64(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L161
  movsd  D189(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L18
  movsd  D269(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L70
  movsd  D165(%rip),%xmm1
  comisd %xmm0,%xmm1
  jbe    L94
  lea    D137(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
  nopw   0x0(%rax,%rax,1)
L187:
  lea    D104(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
  xchg   %ax,%ax
L49:
  lea    D179(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
  cs nopw 0x0(%rax,%rax,1)
L38:
  lea    D295(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
  cs nopw 0x0(%rax,%rax,1)
L155:
  lea    D202(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
  cs nopw 0x0(%rax,%rax,1)
L176:
  lea    D24(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
  cs nopw 0x0(%rax,%rax,1)
L7:
  lea    D246(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
  cs nopw 0x0(%rax,%rax,1)
L33:
  lea    D88(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
  cs nopw 0x0(%rax,%rax,1)
L178:
  lea    D27(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
  cs nopw 0x0(%rax,%rax,1)
L163:
  lea    D55(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
L20:
  lea    D219(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
L25:
  lea    D70(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
L126:
  lea    D98(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
L133:
  lea    D331(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
L61:
  lea    D315(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
L195:
  lea    D233(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
L14:
  lea    D22(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
L161:
  lea    D278(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
L18:
  lea    D387(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
L94:
  lea    D89(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
L70:
  lea    D306(%rip),%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  jmp    1050 <mvprintw@plt>
```

tool_calls: name: read_data
arguments: data_label: D285
type_guessed: byte[8]
name: read_data
arguments: data_label: D322
type_guessed: byte[8]
name: read_data
arguments: data_label: D390
type_guessed: byte[8]
name: read_data
arguments: data_label: D73
type_guessed: byte[8]
name: read_data
arguments: data_label: D51
type_guessed: byte[8]
name: read_data
arguments: data_label: D273
type_guessed: byte[8]
name: read_data
arguments: data_label: D50
type_guessed: byte[8]
name: read_data
arguments: data_label: D266
type_guessed: byte[8]
name: read_data
arguments: data_label: D292
type_guessed: byte[8]
name: read_data
arguments: data_label: D274
type_guessed: byte[8]
name: read_data
arguments: data_label: D163
type_guessed: f64
name: read_data
arguments: data_label: D18
type_guessed: byte[8]
name: read_data
arguments: data_label: D115
type_guessed: byte[8]
name: read_data
arguments: data_label: D388
type_guessed: byte[8]
name: read_data
arguments: data_label: D216
type_guessed: byte[8]
name: read_data
arguments: data_label: D344
type_guessed: byte[8]
name: read_data
arguments: data_label: D64
type_guessed: byte[8]
name: read_data
arguments: data_label: D189
type_guessed: byte[8]
name: read_data
arguments: data_label: D269
type_guessed: byte[8]
name: read_data
arguments: data_label: D165
type_guessed: byte[8]
name: read_data
arguments: data_label: D137
type_guessed: string
name: read_data
arguments: data_label: D104
type_guessed: string
name: read_data
arguments: data_label: D179
type_guessed: string
name: read_data
arguments: data_label: D295
type_guessed: string
name: read_data
arguments: data_label: D202
type_guessed: string
name: read_data
arguments: data_label: D24
type_guessed: string
name: read_data
arguments: data_label: D246
type_guessed: string
name: read_data
arguments: data_label: D88
type_guessed: string
name: read_data
arguments: data_label: D27
type_guessed: string
name: read_data
arguments: data_label: D55
type_guessed: string
name: read_data
arguments: data_label: D219
type_guessed: string
name: read_data
arguments: data_label: D70
type_guessed: string
name: read_data
arguments: data_label: D98
type_guessed: string
name: read_data
arguments: data_label: D331
type_guessed: string
name: read_data
arguments: data_label: D315
type_guessed: string
name: read_data
arguments: data_label: D233
type_guessed: string
name: read_data
arguments: data_label: D22
type_guessed: string
name: read_data
arguments: data_label: D278
type_guessed: string
name: read_data
arguments: data_label: D387
type_guessed: string
name: read_data
arguments: data_label: D89
type_guessed: string
name: read_data
arguments: data_label: D306
type_guessed: string

tool: {"D285": [0x00,0x00,0x00,0x00,0x00,0x00,0x24,0xc0]}

tool: {"D322": [0x00,0x00,0x00,0x00,0x00,0x00,0x22,0xc0]}

tool: {"D390": [0x00,0x00,0x00,0x00,0x00,0x00,0x20,0xc0]}

tool: {"D73": [0x00,0x00,0x00,0x00,0x00,0x00,0x1c,0xc0]}

tool: {"D51": [0x00,0x00,0x00,0x00,0x00,0x00,0x18,0xc0]}

tool: {"D273": [0x00,0x00,0x00,0x00,0x00,0x00,0x14,0xc0]}

tool: {"D50": [0x00,0x00,0x00,0x00,0x00,0x00,0x10,0xc0]}

tool: {"D266": [0x00,0x00,0x00,0x00,0x00,0x00,0x08,0xc0]}

tool: {"D292": [0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0]}

tool: {"D274": [0x33,0x33,0x33,0x33,0x33,0x33,0xd3,0xbf]}

tool: D163: 0.3

tool: {"D18": [0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40]}

tool: {"D115": [0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x40]}

tool: {"D388": [0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x40]}

tool: {"D216": [0x00,0x00,0x00,0x00,0x00,0x00,0x14,0x40]}

tool: {"D344": [0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x40]}

tool: {"D64": [0x00,0x00,0x00,0x00,0x00,0x00,0x1c,0x40]}

tool: {"D189": [0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x40]}

tool: {"D269": [0x00,0x00,0x00,0x00,0x00,0x00,0x22,0x40]}

tool: {"D165": [0x00,0x00,0x00,0x00,0x00,0x00,0x24,0x40]}

tool: D137:           ##========> 

tool: D104:  <========##          

tool: D179: <=========##          

tool: D295:     <=====##          

tool: D202:   <=======##          

tool: D24:    <======##          

tool: D246:        <==##          

tool: D88:      <====##          

tool: D27:       <===##          

tool: D55:         <=##          

tool: D219:          <##          

tool: D70:           ##          

tool: D98:           ##>         

tool: D331:           ##=>        

tool: D315:           ##==>       

tool: D233:           ##===>      

tool: D22:           ##====>     

tool: D278:           ##=====>    

tool: D387:           ##======>   

tool: D89:           ##=========>

tool: D306:           ##=======>  

assistant: ```c
void nunchuk_show_ext_x(double val) {
  if (val < -10)
    mvprintw(30, 2, "<=========##          ");
  else if (val < -9)
    mvprintw(30, 2, " <========##          ");
  else if (val < -8)
    mvprintw(30, 2, "  <=======##          ");
  else if (val < -7)
    mvprintw(30, 2, "   <======##          ");
  else if (val < -6)
    mvprintw(30, 2, "    <=====##          ");
  else if (val < -5)
    mvprintw(30, 2, "     <====##          ");
  else if (val < -4)
    mvprintw(30, 2, "      <===##          ");
  else if (val < -3)
    mvprintw(30, 2, "       <==##          ");
  else if (val < -2)
    mvprintw(30, 2, "        <=##          ");
  else if (val < -0.3)
    mvprintw(30, 2, "         <##          ");
  else if (val < 0.3)
    mvprintw(30, 2, "          ##          ");
  else if (val < 2)
    mvprintw(30, 2, "          ##>         ");
  else if (val < 3)
    mvprintw(30, 2, "          ##=>        ");
  else if (val < 4)
    mvprintw(30, 2, "          ##==>       ");
  else if (val < 5)
    mvprintw(30, 2, "          ##===>      ");
  else if (val < 6)
    mvprintw(30, 2, "          ##====>     ");
  else if (val < 7)
    mvprintw(30, 2, "          ##=====>    ");
  else if (val < 8)
    mvprintw(30, 2, "          ##======>   ");
  else if (val < 9)
    mvprintw(30, 2, "          ##=======>  ");
  else if (val < 10)
    mvprintw(30, 2, "          ##========> ");
  else
    mvprintw(30, 2, "          ##=========>");
}
```