user: 这段汇编代码用C语言表示是什么样的？

```asm
<nunchuk_show_ext_x>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x10,%rsp
  movsd  %xmm0,-0x8(%rbp)
  movsd  D408(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L232
  lea    D204(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L232:
  movsd  D142(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L52
  lea    D127(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L52:
  movsd  D231(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L170
  lea    D225(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L170:
  movsd  D201(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L252
  lea    D392(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L252:
  movsd  D106(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L286
  lea    D399(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L286:
  movsd  D191(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L346
  lea    D268(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L346:
  movsd  D401(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L83
  lea    D297(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L83:
  movsd  D327(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L66
  lea    D205(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L66:
  movsd  D253(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L388
  lea    D63(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L388:
  movsd  D259(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L316
  lea    D208(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L316:
  movsd  D159(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L222
  lea    D304(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L222:
  movsd  D273(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L284
  lea    D8(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L284:
  movsd  D108(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L81
  lea    D46(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L81:
  movsd  D47(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L334
  lea    D168(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L334:
  movsd  D311(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L60
  lea    D18(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L60:
  movsd  D11(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L362
  lea    D137(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L362:
  movsd  D373(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L399
  lea    D288(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L399:
  movsd  D160(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L104
  lea    D66(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L104:
  movsd  D6(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L364
  lea    D361(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L364:
  movsd  D397(%rip),%xmm0
  comisd -0x8(%rbp),%xmm0
  jbe    L154
  lea    D101(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
  jmp    L374
L154:
  lea    D226(%rip),%rax
  mov    %rax,%rdx
  mov    $0x2,%esi
  mov    $0x1e,%edi
  call   <mvprintw@plt>
L374:
  nop
  leave
  ret
```

tool_calls: name: read_data
arguments: data_label: D408
type_infered: byte[8]
name: read_data
arguments: data_label: D204
type_infered: string
name: read_data
arguments: data_label: D142
type_infered: byte[8]
name: read_data
arguments: data_label: D127
type_infered: string
name: read_data
arguments: data_label: D231
type_infered: byte[8]
name: read_data
arguments: data_label: D225
type_infered: string
name: read_data
arguments: data_label: D201
type_infered: byte[8]
name: read_data
arguments: data_label: D392
type_infered: string
name: read_data
arguments: data_label: D106
type_infered: byte[8]
name: read_data
arguments: data_label: D399
type_infered: string
name: read_data
arguments: data_label: D191
type_infered: byte[8]
name: read_data
arguments: data_label: D268
type_infered: string
name: read_data
arguments: data_label: D401
type_infered: byte[8]
name: read_data
arguments: data_label: D297
type_infered: string
name: read_data
arguments: data_label: D327
type_infered: byte[8]
name: read_data
arguments: data_label: D205
type_infered: string
name: read_data
arguments: data_label: D253
type_infered: byte[8]
name: read_data
arguments: data_label: D63
type_infered: string
name: read_data
arguments: data_label: D259
type_infered: byte[8]
name: read_data
arguments: data_label: D208
type_infered: string
name: read_data
arguments: data_label: D159
type_infered: f64
name: read_data
arguments: data_label: D304
type_infered: string
name: read_data
arguments: data_label: D273
type_infered: byte[8]
name: read_data
arguments: data_label: D8
type_infered: string
name: read_data
arguments: data_label: D108
type_infered: byte[8]
name: read_data
arguments: data_label: D46
type_infered: string
name: read_data
arguments: data_label: D47
type_infered: byte[8]
name: read_data
arguments: data_label: D168
type_infered: string
name: read_data
arguments: data_label: D311
type_infered: byte[8]
name: read_data
arguments: data_label: D18
type_infered: string
name: read_data
arguments: data_label: D11
type_infered: byte[8]
name: read_data
arguments: data_label: D137
type_infered: string
name: read_data
arguments: data_label: D373
type_infered: byte[8]
name: read_data
arguments: data_label: D288
type_infered: string
name: read_data
arguments: data_label: D160
type_infered: byte[8]
name: read_data
arguments: data_label: D66
type_infered: string
name: read_data
arguments: data_label: D6
type_infered: byte[8]
name: read_data
arguments: data_label: D361
type_infered: string
name: read_data
arguments: data_label: D397
type_infered: byte[8]
name: read_data
arguments: data_label: D101
type_infered: string
name: read_data
arguments: data_label: D226
type_infered: string

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

tool: D204: <=========##          

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

tool: D127:  <========##          

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

tool: D225:   <=======##          

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

tool: D392:    <======##          

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

tool: D399:     <=====##          

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

tool: D268:      <====##          

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

tool: D297:       <===##          

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

tool: D205:        <==##          

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

tool: D63:         <=##          

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

tool: D208:          <##          

tool: D159: 0.3

tool: D304:           ##          

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

tool: D8:           ##>         

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

tool: D46:           ##=>        

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

tool: D168:           ##==>       

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

tool: D18:           ##===>      

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

tool: D137:           ##====>     

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

tool: D288:           ##=====>    

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

tool: D66:           ##======>   

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

tool: D361:           ##=======>  

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

tool: D101:           ##========> 

tool: D226:           ##=========>

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, "          ##=========>");
}
```