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

```asm
<ho_recognize_font_1_gimal>:
  endbr64
  pxor   %xmm1,%xmm1
  ucomisd 0x110(%rdi),%xmm1
  jp     L411
  jne    L411
  movsd  D90(%rip),%xmm2
  movapd %xmm1,%xmm0
  movapd %xmm2,%xmm3
L293:
  movsd  0x120(%rdi),%xmm5
  ucomisd %xmm1,%xmm5
  jp     L8
  jne    L8
L232:
  ucomisd 0x338(%rdi),%xmm1
  jp     L112
  jne    L112
L357:
  movsd  0x178(%rdi),%xmm7
  ucomisd %xmm1,%xmm7
  jp     L415
  jne    L415
  ucomisd 0x180(%rdi),%xmm1
  jp     L415
  je     L13
L415:
  addsd  %xmm2,%xmm0
L13:
  movsd  0x28(%rdi),%xmm6
  movsd  0x50(%rdi),%xmm3
  comisd %xmm3,%xmm6
  jbe    L333
  addsd  %xmm2,%xmm0
L333:
  movsd  0x38(%rdi),%xmm4
  comisd 0x60(%rdi),%xmm4
  jbe    L23
  addsd  %xmm2,%xmm0
L23:
  movsd  D165(%rip),%xmm8
  movsd  0x58(%rdi),%xmm4
  comisd %xmm8,%xmm4
  jbe    L159
  movsd  D101(%rip),%xmm9
  comisd %xmm4,%xmm9
  ja     L436
L159:
  addsd  %xmm8,%xmm3
  comisd %xmm3,%xmm6
  jbe    L329
  addsd  D138(%rip),%xmm0
L329:
  movsd  0x8(%rdi),%xmm6
  movsd  D31(%rip),%xmm3
  comisd %xmm6,%xmm3
  jbe    L130
  ucomisd 0x98(%rdi),%xmm1
  movsd  D138(%rip),%xmm8
  addsd  %xmm8,%xmm0
  jp     L238
  je     L130
L238:
  ucomisd 0x208(%rdi),%xmm2
  jp     L239
  jne    L239
L242:
  addsd  %xmm8,%xmm0
  xchg   %ax,%ax
L130:
  comisd D37(%rip),%xmm4
  jbe    L91
  subsd  %xmm3,%xmm0
L91:
  movsd  0x20(%rdi),%xmm4
  comisd D17(%rip),%xmm4
  ja     L349
  movsd  D154(%rip),%xmm8
  comisd %xmm4,%xmm8
  ja     L349
L96:
  movsd  D18(%rip),%xmm2
  comisd %xmm4,%xmm2
  jbe    L432
  subsd  %xmm3,%xmm0
L432:
  ucomisd %xmm1,%xmm7
  jp     L123
  jne    L123
  ucomisd 0x180(%rdi),%xmm1
  jp     L123
  jne    L123
  subsd  D138(%rip),%xmm0
L123:
  ucomisd 0xa0(%rdi),%xmm1
  jp     L119
  jne    L119
L261:
  comisd D115(%rip),%xmm6
  jbe    L102
  subsd  D138(%rip),%xmm0
L102:
  movsd  0x10(%rdi),%xmm2
  comisd D117(%rip),%xmm2
  jbe    L266
  subsd  D138(%rip),%xmm0
L266:
  comisd (%rdi),%xmm3
  jbe    L298
  subsd  %xmm3,%xmm0
L298:
  ucomisd %xmm1,%xmm5
  jp     L77
  jne    L77
  subsd  D138(%rip),%xmm0
L77:
  ret
  nop
L349:
  subsd  %xmm2,%xmm0
  jmp    L96
  nopl   0x0(%rax)
L119:
  subsd  %xmm3,%xmm0
  jmp    L261
  cs nopw 0x0(%rax,%rax,1)
L112:
  addsd  %xmm2,%xmm0
  jmp    L357
  nopl   0x0(%rax)
L8:
  movapd %xmm3,%xmm0
  jmp    L232
  nopl   0x0(%rax)
L411:
  movsd  D90(%rip),%xmm2
  movsd  D138(%rip),%xmm3
  movapd %xmm2,%xmm0
  jmp    L293
  nopl   0x0(%rax)
L436:
  addsd  %xmm2,%xmm0
  jmp    L159
  nopl   0x0(%rax)
L239:
  ucomisd 0x210(%rdi),%xmm2
  jp     L130
  je     L242
  jmp    L130
```

tool_calls: name: unpack_data
arguments: data_label: D90
datatype: f64
name: unpack_data
arguments: data_label: D165
datatype: f64
name: unpack_data
arguments: data_label: D101
datatype: f64
name: unpack_data
arguments: data_label: D138
datatype: f64
name: unpack_data
arguments: data_label: D31
datatype: f64
name: unpack_data
arguments: data_label: D37
datatype: f64[2]
name: unpack_data
arguments: data_label: D17
datatype: f64[2]
name: unpack_data
arguments: data_label: D154
datatype: f32[2]
name: unpack_data
arguments: data_label: D18
datatype: f64
name: unpack_data
arguments: data_label: D115
datatype: f64[2]
name: unpack_data
arguments: data_label: D117
datatype: f64

tool: D90: 0.1

tool: D165: 0.25

tool: D101: 0.45

tool: D138: 0.2

tool: D31: 0.3

tool: {"D37": [0.5,0.57]}

tool: {"D17": [0.57,43.0]}

tool: {"D154": [0.0,3.0859375]}

tool: D18: 0.43

tool: {"D115": [0.34,0.8]}

tool: D117: 0.8

assistant: ```c
double ho_recognize_font_1_gimal(const double *array_in) {
  double return_value = 0.0;
  if ((array_in[34]))
    return_value += 0.1;
  if ((array_in[36]))
    return_value += 0.1;
  if ((array_in[103]))
    return_value += 0.1;
  if ((array_in[47]) || (array_in[48]))
    return_value += 0.1;
  if ((array_in[5]) > (array_in[10]))
    return_value += 0.1;
  if ((array_in[7]) > (array_in[12]))
    return_value += 0.1;
  if ((array_in[11]) > 0.25 && (array_in[11]) < 0.45)
    return_value += 0.1;
  if ((array_in[5]) > ((array_in[10]) + 0.25))
    return_value += 0.2;
  if ((array_in[1]) < 0.3)
    return_value += 0.2;
  if ((array_in[1]) < 0.3 && (array_in[19]) && ((array_in[65]) == 0.1 || (array_in[66]) == 0.1))
    return_value += 0.2;
  if ((array_in[11]) > 0.5)
    return_value -= 0.3;
  if ((array_in[4]) > 0.57 || (array_in[4]) < 43)
    return_value -= 0.10;
  if ((array_in[4]) < 0.43)
    return_value -= 0.3;
  if (!(array_in[47]) && !(array_in[48]))
    return_value -= 0.2;
  if ((array_in[20]))
    return_value -= 0.3;
  if ((array_in[1]) > 0.34)
    return_value -= 0.2;
  if ((array_in[2]) > 0.8)
    return_value -= 0.2;
  if ((array_in[0]) < 0.3)
    return_value -= 0.3;
  if (!(array_in[36]))
    return_value -= 0.2;
  return return_value;
}
```