user: 请将这段汇编代码片段转换成等效的C代码：

```asm
<BuscaInstrucao>:
  endbr64
  push   %r12
  mov    %rdi,%rsi
  push   %rbp
  mov    %rdi,%rbp
  sub    $0xd8,%rsp
  mov    %fs:0x28,%rax
  mov    %rax,0xc8(%rsp)
  xor    %eax,%eax
  mov    %rsp,%r12
  mov    %r12,%rdi
  call   <strcpy@plt>
  xor    %eax,%eax
  mov    %r12,%rdi
  call   <parser_str_to_upper@plt>
  cmpl   $0x44414f4c,(%rsp)
  je     L263
  cmpl   $0x44414f4c,(%rsp)
  je     L1997
L1117:
  cmpl   $0x44414f4c,(%rsp)
  je     L835
L433:
  cmpl   $0x55504e49,(%rsp)
  je     L1326
L657:
  cmpl   $0x5054554f,(%rsp)
  je     L1951
L152:
  cmpl   $0x524f5453,(%rsp)
  je     L1129
L549:
  cmpl   $0x524f5453,(%rsp)
  je     L1697
L1723:
  cmpl   $0x524f5453,(%rsp)
  je     L463
L1745:
  cmpl   $0x564f4d,(%rsp)
  mov    $0x3,%eax
  je     L365
  cmpw   $0x4e49,(%rsp)
  je     L1584
L324:
  cmpl   $0x54554f,(%rsp)
  mov    $0x4,%eax
  je     L365
  cmpl   $0x444441,(%rsp)
  mov    $0x6,%eax
  je     L365
  cmpl   $0x43444441,(%rsp)
  je     L495
L158:
  cmpl   $0x425553,(%rsp)
  mov    $0x8,%eax
  je     L365
  cmpl   $0x43425553,(%rsp)
  je     L1878
L1546:
  cmpl   $0x4c554d,(%rsp)
  mov    $0xa,%eax
  je     L365
  cmpl   $0x564944,(%rsp)
  mov    $0xb,%eax
  je     L365
  cmpl   $0x434e49,(%rsp)
  mov    $0xc,%eax
  je     L365
  cmpl   $0x434544,(%rsp)
  mov    $0xd,%eax
  je     L365
  cmpl   $0x444f4d,(%rsp)
  mov    $0x5f,%eax
  je     L365
  cmpl   $0x444e41,(%rsp)
  mov    $0xe,%eax
  je     L365
  cmpw   $0x524f,(%rsp)
  je     L1292
L2044:
  cmpl   $0x524f58,(%rsp)
  mov    $0x10,%eax
  je     L365
  cmpl   $0x544f4e,(%rsp)
  mov    $0x11,%eax
  je     L365
  movabs $0x304c5446494853,%rax
  cmp    %rax,(%rsp)
  je     L1088
  movabs $0x314c5446494853,%rax
  cmp    %rax,(%rsp)
  je     L678
  movabs $0x30525446494853,%rax
  cmp    %rax,(%rsp)
  je     L1805
  movabs $0x31525446494853,%rax
  cmp    %rax,(%rsp)
  je     L127
  lea    D726(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L137
  lea    D102(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1609
  lea    D622(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L66
  lea    D32(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1941
  lea    D198(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1636
  lea    D389(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L354
  lea    D251(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L146
  lea    D201(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1143
  lea    D598(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1220
  lea    D98(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L2040
  lea    D393(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1831
  lea    D513(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L775
  lea    D400(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L721
  lea    D660(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1354
  lea    D3(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1911
  lea    D207(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1845
  lea    D465(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1819
  lea    D21(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L337
  lea    D353(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1909
  lea    D232(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1504
  lea    D196(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L20
  lea    D405(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1498
  lea    D114(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L432
  lea    D759(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L476
  lea    D756(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1848
  lea    D79(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L193
  lea    D229(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1727
  lea    D385(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1146
  lea    D42(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1153
  lea    D421(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L101
  lea    D557(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1188
  lea    D30(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1762
  lea    D588(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1267
  lea    D628(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1386
  lea    D24(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L594
  lea    D10(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L949
  lea    D468(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L24
  lea    D151(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1637
  lea    D212(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L2090
  lea    D394(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L838
  lea    D147(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L805
  lea    D453(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1158
  lea    D27(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L2105
  lea    D604(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L48
  lea    D766(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1208
  lea    D494(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L879
  lea    D517(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1763
  lea    D602(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L258
  lea    D411(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L738
  lea    D19(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L640
  lea    D217(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1213
  lea    D328(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L490
  lea    D189(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L344
  lea    D52(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1847
  lea    D95(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L224
  lea    D655(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1705
  lea    D57(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1782
  lea    D634(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1978
  lea    D540(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L184
  lea    D309(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1855
  lea    D293(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1324
  lea    D406(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L316
  lea    D376(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1348
  lea    D156(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1644
  lea    D724(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L963
  lea    D99(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1421
  lea    D729(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1521
  lea    D169(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L244
  lea    D564(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L380
  lea    D586(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L365
  lea    D497(%rip),%rsi
  mov    %rbp,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L689
  lea    D723(%rip),%rsi
  mov    %rbp,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1977
  lea    D503(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L798
  lea    D407(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1825
  lea    D94(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1431
  lea    D318(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  test   %eax,%eax
  je     L1873
  lea    D357(%rip),%rsi
  mov    %r12,%rdi
  call   <strcmp@plt>
  cmp    $0x1,%eax
  sbb    %eax,%eax
  and    $0x5,%eax
  add    $0x64,%eax
  nopl   0x0(%rax)
L365:
  mov    0xc8(%rsp),%rdx
  sub    %fs:0x28,%rdx
  jne    L822
  add    $0xd8,%rsp
  pop    %rbp
  pop    %r12
  ret
  nopw   0x0(%rax,%rax,1)
L263:
  cmpb   $0x0,0x4(%rsp)
  mov    $0x1,%eax
  je     L365
  cmpl   $0x44414f4c,(%rsp)
  jne    L1117
L1997:
  cmpw   $0x4e,0x4(%rsp)
  mov    $0x54,%eax
  je     L365
  cmpl   $0x44414f4c,(%rsp)
  jne    L433
L835:
  cmpw   $0x49,0x4(%rsp)
  mov    $0x55,%eax
  je     L365
  cmpl   $0x55504e49,(%rsp)
  jne    L657
L1326:
  cmpw   $0x54,0x4(%rsp)
  mov    $0x60,%eax
  jne    L657
  jmp    L365
  nopl   0x0(%rax,%rax,1)
L1129:
  cmpw   $0x45,0x4(%rsp)
  mov    $0x2,%eax
  jne    L549
  jmp    L365
  cs nopw 0x0(%rax,%rax,1)
L1697:
  cmpw   $0x4e45,0x4(%rsp)
  jne    L1723
  cmpb   $0x0,0x6(%rsp)
  mov    $0x56,%eax
  je     L365
  jmp    L1723
  nopw   0x0(%rax,%rax,1)
L1951:
  cmpw   $0x5455,0x4(%rsp)
  jne    L152
  cmpb   $0x0,0x6(%rsp)
  mov    $0x61,%eax
  je     L365
  jmp    L152
  nopw   0x0(%rax,%rax,1)
L463:
  cmpw   $0x4945,0x4(%rsp)
  jne    L1745
  cmpb   $0x0,0x6(%rsp)
  mov    $0x57,%eax
  je     L365
  jmp    L1745
  nopw   0x0(%rax,%rax,1)
L1584:
  cmpb   $0x0,0x2(%rsp)
  mov    $0x5,%eax
  je     L365
  jmp    L324
  nopl   (%rax)
L495:
  cmpb   $0x0,0x4(%rsp)
  mov    $0x7,%eax
  je     L365
  jmp    L158
L1878:
  cmpb   $0x0,0x4(%rsp)
  mov    $0x9,%eax
  je     L365
  jmp    L1546
L1292:
  cmpb   $0x0,0x2(%rsp)
  mov    $0xf,%eax
  je     L365
  jmp    L2044
L1088:
  mov    $0x12,%eax
  jmp    L365
L678:
  mov    $0x13,%eax
  jmp    L365
L1805:
  mov    $0x14,%eax
  jmp    L365
L822:
  call   <__stack_chk_fail@plt>
L127:
  mov    $0x15,%eax
  jmp    L365
L137:
  mov    $0x16,%eax
  jmp    L365
L1609:
  mov    $0x17,%eax
  jmp    L365
L66:
  mov    $0x18,%eax
  jmp    L365
L1636:
  mov    $0x1a,%eax
  jmp    L365
L1941:
  mov    $0x19,%eax
  jmp    L365
L354:
  mov    $0x1b,%eax
  jmp    L365
L146:
  mov    $0x1c,%eax
  jmp    L365
L1873:
  mov    $0x68,%eax
  jmp    L365
L1431:
  mov    $0x67,%eax
  jmp    L365
L1220:
  mov    $0x1e,%eax
  jmp    L365
L1143:
  mov    $0x1d,%eax
  jmp    L365
L1825:
  mov    $0x66,%eax
  jmp    L365
L798:
  mov    $0x65,%eax
  jmp    L365
L1977:
  mov    $0x62,%eax
  jmp    L365
L689:
  mov    $0x63,%eax
  jmp    L365
L380:
  mov    $0x59,%eax
  jmp    L365
L244:
  mov    $0x58,%eax
  jmp    L365
L1521:
  mov    $0x53,%eax
  jmp    L365
L1421:
  mov    $0x52,%eax
  jmp    L365
L963:
  mov    $0x5e,%eax
  jmp    L365
L1644:
  mov    $0x51,%eax
  jmp    L365
L1348:
  mov    $0x50,%eax
  jmp    L365
L316:
  mov    $0x4f,%eax
  jmp    L365
L1324:
  mov    $0x4e,%eax
  jmp    L365
L1855:
  mov    $0x4d,%eax
  jmp    L365
L184:
  mov    $0x4c,%eax
  jmp    L365
L1978:
  mov    $0x4b,%eax
  jmp    L365
L1848:
  mov    $0x2e,%eax
  jmp    L365
L476:
  mov    $0x2d,%eax
  jmp    L365
L432:
  mov    $0x2c,%eax
  jmp    L365
L1498:
  mov    $0x2b,%eax
  jmp    L365
L20:
  mov    $0x2a,%eax
  jmp    L365
L1504:
  mov    $0x29,%eax
  jmp    L365
L1909:
  mov    $0x28,%eax
  jmp    L365
L337:
  mov    $0x27,%eax
  jmp    L365
L1819:
  mov    $0x26,%eax
  jmp    L365
L1845:
  mov    $0x25,%eax
  jmp    L365
L1911:
  mov    $0x24,%eax
  jmp    L365
L1354:
  mov    $0x23,%eax
  jmp    L365
L721:
  mov    $0x22,%eax
  jmp    L365
L775:
  mov    $0x21,%eax
  jmp    L365
L1831:
  mov    $0x20,%eax
  jmp    L365
L2040:
  mov    $0x1f,%eax
  jmp    L365
L1782:
  mov    $0x4a,%eax
  jmp    L365
L1705:
  mov    $0x49,%eax
  jmp    L365
L224:
  mov    $0x48,%eax
  jmp    L365
L1847:
  mov    $0x47,%eax
  jmp    L365
L344:
  mov    $0x46,%eax
  jmp    L365
L490:
  mov    $0x45,%eax
  jmp    L365
L1213:
  mov    $0x44,%eax
  jmp    L365
L640:
  mov    $0x43,%eax
  jmp    L365
L738:
  mov    $0x42,%eax
  jmp    L365
L258:
  mov    $0x41,%eax
  jmp    L365
L1763:
  mov    $0x40,%eax
  jmp    L365
L879:
  mov    $0x5c,%eax
  jmp    L365
L1208:
  mov    $0x5d,%eax
  jmp    L365
L48:
  mov    $0x3f,%eax
  jmp    L365
L2105:
  mov    $0x3e,%eax
  jmp    L365
L1158:
  mov    $0x3d,%eax
  jmp    L365
L805:
  mov    $0x3c,%eax
  jmp    L365
L838:
  mov    $0x3b,%eax
  jmp    L365
L2090:
  mov    $0x3a,%eax
  jmp    L365
L1637:
  mov    $0x39,%eax
  jmp    L365
L24:
  mov    $0x38,%eax
  jmp    L365
L949:
  mov    $0x37,%eax
  jmp    L365
L594:
  mov    $0x36,%eax
  jmp    L365
L1386:
  mov    $0x35,%eax
  jmp    L365
L1267:
  mov    $0x34,%eax
  jmp    L365
L1762:
  mov    $0x33,%eax
  jmp    L365
L1188:
  mov    $0x5a,%eax
  jmp    L365
L101:
  mov    $0x5b,%eax
  jmp    L365
L1153:
  mov    $0x32,%eax
  jmp    L365
L1146:
  mov    $0x31,%eax
  jmp    L365
L1727:
  mov    $0x30,%eax
  jmp    L365
L193:
  mov    $0x2f,%eax
  jmp    L365
```

tool_calls: name: unpack_data
arguments: data_tag: D726
type_guessed: string
name: unpack_data
arguments: data_tag: D102
type_guessed: string
name: unpack_data
arguments: data_tag: D622
type_guessed: string
name: unpack_data
arguments: data_tag: D32
type_guessed: string
name: unpack_data
arguments: data_tag: D198
type_guessed: string
name: unpack_data
arguments: data_tag: D389
type_guessed: string
name: unpack_data
arguments: data_tag: D251
type_guessed: string
name: unpack_data
arguments: data_tag: D201
type_guessed: string
name: unpack_data
arguments: data_tag: D598
type_guessed: string
name: unpack_data
arguments: data_tag: D98
type_guessed: string
name: unpack_data
arguments: data_tag: D393
type_guessed: string
name: unpack_data
arguments: data_tag: D513
type_guessed: string
name: unpack_data
arguments: data_tag: D400
type_guessed: string
name: unpack_data
arguments: data_tag: D660
type_guessed: string
name: unpack_data
arguments: data_tag: D3
type_guessed: string
name: unpack_data
arguments: data_tag: D207
type_guessed: string
name: unpack_data
arguments: data_tag: D465
type_guessed: string
name: unpack_data
arguments: data_tag: D21
type_guessed: string
name: unpack_data
arguments: data_tag: D353
type_guessed: string
name: unpack_data
arguments: data_tag: D232
type_guessed: string
name: unpack_data
arguments: data_tag: D196
type_guessed: string
name: unpack_data
arguments: data_tag: D405
type_guessed: string
name: unpack_data
arguments: data_tag: D114
type_guessed: string
name: unpack_data
arguments: data_tag: D759
type_guessed: string
name: unpack_data
arguments: data_tag: D756
type_guessed: string
name: unpack_data
arguments: data_tag: D79
type_guessed: string
name: unpack_data
arguments: data_tag: D229
type_guessed: string
name: unpack_data
arguments: data_tag: D385
type_guessed: string
name: unpack_data
arguments: data_tag: D42
type_guessed: string
name: unpack_data
arguments: data_tag: D421
type_guessed: string
name: unpack_data
arguments: data_tag: D557
type_guessed: string
name: unpack_data
arguments: data_tag: D30
type_guessed: string
name: unpack_data
arguments: data_tag: D588
type_guessed: string
name: unpack_data
arguments: data_tag: D628
type_guessed: string
name: unpack_data
arguments: data_tag: D24
type_guessed: string
name: unpack_data
arguments: data_tag: D10
type_guessed: string
name: unpack_data
arguments: data_tag: D468
type_guessed: string
name: unpack_data
arguments: data_tag: D151
type_guessed: string
name: unpack_data
arguments: data_tag: D212
type_guessed: string
name: unpack_data
arguments: data_tag: D394
type_guessed: string
name: unpack_data
arguments: data_tag: D147
type_guessed: string
name: unpack_data
arguments: data_tag: D453
type_guessed: string
name: unpack_data
arguments: data_tag: D27
type_guessed: string
name: unpack_data
arguments: data_tag: D604
type_guessed: string
name: unpack_data
arguments: data_tag: D766
type_guessed: string
name: unpack_data
arguments: data_tag: D494
type_guessed: string
name: unpack_data
arguments: data_tag: D517
type_guessed: string
name: unpack_data
arguments: data_tag: D602
type_guessed: string
name: unpack_data
arguments: data_tag: D411
type_guessed: string
name: unpack_data
arguments: data_tag: D19
type_guessed: string
name: unpack_data
arguments: data_tag: D217
type_guessed: string
name: unpack_data
arguments: data_tag: D328
type_guessed: string
name: unpack_data
arguments: data_tag: D189
type_guessed: string
name: unpack_data
arguments: data_tag: D52
type_guessed: string
name: unpack_data
arguments: data_tag: D95
type_guessed: string
name: unpack_data
arguments: data_tag: D655
type_guessed: string
name: unpack_data
arguments: data_tag: D57
type_guessed: string
name: unpack_data
arguments: data_tag: D634
type_guessed: string
name: unpack_data
arguments: data_tag: D540
type_guessed: string
name: unpack_data
arguments: data_tag: D309
type_guessed: string
name: unpack_data
arguments: data_tag: D293
type_guessed: string
name: unpack_data
arguments: data_tag: D406
type_guessed: string
name: unpack_data
arguments: data_tag: D376
type_guessed: string
name: unpack_data
arguments: data_tag: D156
type_guessed: string
name: unpack_data
arguments: data_tag: D724
type_guessed: string
name: unpack_data
arguments: data_tag: D99
type_guessed: string
name: unpack_data
arguments: data_tag: D729
type_guessed: string
name: unpack_data
arguments: data_tag: D169
type_guessed: string
name: unpack_data
arguments: data_tag: D564
type_guessed: string
name: unpack_data
arguments: data_tag: D586
type_guessed: string
name: unpack_data
arguments: data_tag: D497
type_guessed: string
name: unpack_data
arguments: data_tag: D723
type_guessed: string
name: unpack_data
arguments: data_tag: D503
type_guessed: string
name: unpack_data
arguments: data_tag: D407
type_guessed: string
name: unpack_data
arguments: data_tag: D94
type_guessed: string
name: unpack_data
arguments: data_tag: D318
type_guessed: string
name: unpack_data
arguments: data_tag: D357
type_guessed: string

tool: D726: ROTL

tool: D102: ROTR

tool: D622: CMP

tool: D32: BRA

tool: D198: BEQ

tool: D389: BNE

tool: D251: BZ

tool: D201: BNZ

tool: D598: BC

tool: D98: BNC

tool: D393: BGT

tool: D513: BLT

tool: D400: BEG

tool: D660: BEL

tool: D3: BOV

tool: D207: BNO

tool: D465: JMP

tool: D21: JEQ

tool: D353: JNE

tool: D232: JZ

tool: D196: JNZ

tool: D405: JC

tool: D114: JNC

tool: D759: JGR

tool: D756: JLE

tool: D79: JEG

tool: D229: JEL

tool: D385: JOV

tool: D42: JNO

tool: D421: JN

tool: D557: JDZ

tool: D30: CALL

tool: D588: CEQ

tool: D628: CNE

tool: D24: CZ

tool: D10: CNZ

tool: D468: CC

tool: D151: CNC

tool: D212: CGR

tool: D394: CLE

tool: D147: CEG

tool: D453: CEL

tool: D27: COV

tool: D604: CNO

tool: D766: CN

tool: D494: CDZ

tool: D517: SET

tool: D602: SEQ

tool: D411: SNE

tool: D19: SZ

tool: D217: SNZ

tool: D328: SC

tool: D189: SNC

tool: D52: SGT

tool: D95: SLT

tool: D655: SEG

tool: D57: SEL

tool: D634: SOV

tool: D540: SNO

tool: D309: RTS

tool: D293: RTI

tool: D406: PUSH

tool: D376: POP

tool: D156: HALT

tool: D724: BREAKP

tool: D99: SETC

tool: D729: CLEARC

tool: D169: CALLR

tool: D564: JMPR

tool: D586: NOP

tool: D497: DI

tool: D723: EI

tool: D503: EQU

tool: D407: VAR

tool: D94: STATIC

tool: D318: STRING

tool: D357: ALLOC

assistant: ```c
int BuscaInstrucao(char *nome) {
  char str_tmp[200];
  strcpy(str_tmp, nome);
  parser_str_to_upper(str_tmp);
  if (strcmp(str_tmp, "LOAD") == 0) {
    return 1;
  } else if (strcmp(str_tmp, "LOADN") == 0) {
    return 84;
  } else if (strcmp(str_tmp, "LOADI") == 0) {
    return 85;
  } else if (strcmp(str_tmp, "INPUT") == 0) {
    return 96;
  } else if (strcmp(str_tmp, "OUTPUT") == 0) {
    return 97;
  } else if (strcmp(str_tmp, "STORE") == 0) {
    return 2;
  } else if (strcmp(str_tmp, "STOREN") == 0) {
    return 86;
  } else if (strcmp(str_tmp, "STOREI") == 0) {
    return 87;
  } else if (strcmp(str_tmp, "MOV") == 0) {
    return 3;
  } else if (strcmp(str_tmp, "IN") == 0) {
    return 5;
  } else if (strcmp(str_tmp, "OUT") == 0) {
    return 4;
  } else if (strcmp(str_tmp, "ADD") == 0) {
    return 6;
  } else if (strcmp(str_tmp, "ADDC") == 0) {
    return 7;
  } else if (strcmp(str_tmp, "SUB") == 0) {
    return 8;
  } else if (strcmp(str_tmp, "SUBC") == 0) {
    return 9;
  } else if (strcmp(str_tmp, "MUL") == 0) {
    return 10;
  } else if (strcmp(str_tmp, "DIV") == 0) {
    return 11;
  } else if (strcmp(str_tmp, "INC") == 0) {
    return 12;
  } else if (strcmp(str_tmp, "DEC") == 0) {
    return 13;
  } else if (strcmp(str_tmp, "MOD") == 0) {
    return 95;
  } else if (strcmp(str_tmp, "AND") == 0) {
    return 14;
  } else if (strcmp(str_tmp, "OR") == 0) {
    return 15;
  } else if (strcmp(str_tmp, "XOR") == 0) {
    return 16;
  } else if (strcmp(str_tmp, "NOT") == 0) {
    return 17;
  } else if (strcmp(str_tmp, "SHIFTL0") == 0) {
    return 18;
  } else if (strcmp(str_tmp, "SHIFTL1") == 0) {
    return 19;
  } else if (strcmp(str_tmp, "SHIFTR0") == 0) {
    return 20;
  } else if (strcmp(str_tmp, "SHIFTR1") == 0) {
    return 21;
  } else if (strcmp(str_tmp, "ROTL") == 0) {
    return 22;
  } else if (strcmp(str_tmp, "ROTR") == 0) {
    return 23;
  } else if (strcmp(str_tmp, "CMP") == 0) {
    return 24;
  } else if (strcmp(str_tmp, "BRA") == 0) {
    return 25;
  } else if (strcmp(str_tmp, "BEQ") == 0) {
    return 26;
  } else if (strcmp(str_tmp, "BNE") == 0) {
    return 27;
  } else if (strcmp(str_tmp, "BZ") == 0) {
    return 28;
  } else if (strcmp(str_tmp, "BNZ") == 0) {
    return 29;
  } else if (strcmp(str_tmp, "BC") == 0) {
    return 30;
  } else if (strcmp(str_tmp, "BNC") == 0) {
    return 31;
  } else if (strcmp(str_tmp, "BGT") == 0) {
    return 32;
  } else if (strcmp(str_tmp, "BLT") == 0) {
    return 33;
  } else if (strcmp(str_tmp, "BEG") == 0) {
    return 34;
  } else if (strcmp(str_tmp, "BEL") == 0) {
    return 35;
  } else if (strcmp(str_tmp, "BOV") == 0) {
    return 36;
  } else if (strcmp(str_tmp, "BNO") == 0) {
    return 37;
  } else if (strcmp(str_tmp, "JMP") == 0) {
    return 38;
  } else if (strcmp(str_tmp, "JEQ") == 0) {
    return 39;
  } else if (strcmp(str_tmp, "JNE") == 0) {
    return 40;
  } else if (strcmp(str_tmp, "JZ") == 0) {
    return 41;
  } else if (strcmp(str_tmp, "JNZ") == 0) {
    return 42;
  } else if (strcmp(str_tmp, "JC") == 0) {
    return 43;
  } else if (strcmp(str_tmp, "JNC") == 0) {
    return 44;
  } else if (strcmp(str_tmp, "JGR") == 0) {
    return 45;
  } else if (strcmp(str_tmp, "JLE") == 0) {
    return 46;
  } else if (strcmp(str_tmp, "JEG") == 0) {
    return 47;
  } else if (strcmp(str_tmp, "JEL") == 0) {
    return 48;
  } else if (strcmp(str_tmp, "JOV") == 0) {
    return 49;
  } else if (strcmp(str_tmp, "JNO") == 0) {
    return 50;
  } else if (strcmp(str_tmp, "JN") == 0) {
    return 91;
  } else if (strcmp(str_tmp, "JDZ") == 0) {
    return 90;
  } else if (strcmp(str_tmp, "CALL") == 0) {
    return 51;
  } else if (strcmp(str_tmp, "CEQ") == 0) {
    return 52;
  } else if (strcmp(str_tmp, "CNE") == 0) {
    return 53;
  } else if (strcmp(str_tmp, "CZ") == 0) {
    return 54;
  } else if (strcmp(str_tmp, "CNZ") == 0) {
    return 55;
  } else if (strcmp(str_tmp, "CC") == 0) {
    return 56;
  } else if (strcmp(str_tmp, "CNC") == 0) {
    return 57;
  } else if (strcmp(str_tmp, "CGR") == 0) {
    return 58;
  } else if (strcmp(str_tmp, "CLE") == 0) {
    return 59;
  } else if (strcmp(str_tmp, "CEG") == 0) {
    return 60;
  } else if (strcmp(str_tmp, "CEL") == 0) {
    return 61;
  } else if (strcmp(str_tmp, "COV") == 0) {
    return 62;
  } else if (strcmp(str_tmp, "CNO") == 0) {
    return 63;
  } else if (strcmp(str_tmp, "CN") == 0) {
    return 93;
  } else if (strcmp(str_tmp, "CDZ") == 0) {
    return 92;
  } else if (strcmp(str_tmp, "SET") == 0) {
    return 64;
  } else if (strcmp(str_tmp, "SEQ") == 0) {
    return 65;
  } else if (strcmp(str_tmp, "SNE") == 0) {
    return 66;
  } else if (strcmp(str_tmp, "SZ") == 0) {
    return 67;
  } else if (strcmp(str_tmp, "SNZ") == 0) {
    return 68;
  } else if (strcmp(str_tmp, "SC") == 0) {
    return 69;
  } else if (strcmp(str_tmp, "SNC") == 0) {
    return 70;
  } else if (strcmp(str_tmp, "SGT") == 0) {
    return 71;
  } else if (strcmp(str_tmp, "SLT") == 0) {
    return 72;
  } else if (strcmp(str_tmp, "SEG") == 0) {
    return 73;
  } else if (strcmp(str_tmp, "SEL") == 0) {
    return 74;
  } else if (strcmp(str_tmp, "SOV") == 0) {
    return 75;
  } else if (strcmp(str_tmp, "SNO") == 0) {
    return 76;
  } else if (strcmp(str_tmp, "RTS") == 0) {
    return 77;
  } else if (strcmp(str_tmp, "RTI") == 0) {
    return 78;
  } else if (strcmp(str_tmp, "PUSH") == 0) {
    return 79;
  } else if (strcmp(str_tmp, "POP") == 0) {
    return 80;
  } else if (strcmp(str_tmp, "HALT") == 0) {
    return 81;
  } else if (strcmp(str_tmp, "BREAKP") == 0) {
    return 94;
  } else if (strcmp(str_tmp, "SETC") == 0) {
    return 82;
  } else if (strcmp(str_tmp, "CLEARC") == 0) {
    return 83;
  } else if (strcmp(str_tmp, "CALLR") == 0) {
    return 88;
  } else if (strcmp(str_tmp, "JMPR") == 0) {
    return 89;
  } else if (strcmp(str_tmp, "NOP") == 0) {
    return 0;
  } else if (strcmp(nome, "DI") == 0) {
    return 99;
  } else if (strcmp(nome, "EI") == 0) {
    return 98;
  } else if (strcmp(str_tmp, "EQU") == 0) {
    return 101;
  } else if (strcmp(str_tmp, "VAR") == 0) {
    return 102;
  } else if (strcmp(str_tmp, "STATIC") == 0) {
    return 103;
  } else if (strcmp(str_tmp, "STRING") == 0) {
    return 104;
  } else if (strcmp(str_tmp, "ALLOC") == 0) {
    return 105;
  }
  return 100;
}
```