user: Please show me the C implementation that matches the assembly code listed below:

```asm
<UOM_tfromString>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x10,%rsp
  mov    %rdi,-0x8(%rbp)
  mov    -0x8(%rbp),%rax
  lea    D554(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L734
  mov    $0x0,%eax
  jmp    L1134
L734:
  mov    -0x8(%rbp),%rax
  lea    D587(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1063
  mov    $0x1,%eax
  jmp    L1134
L1063:
  mov    -0x8(%rbp),%rax
  lea    D180(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1278
  mov    $0x2,%eax
  jmp    L1134
L1278:
  mov    -0x8(%rbp),%rax
  lea    D667(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L31
  mov    $0x3,%eax
  jmp    L1134
L31:
  mov    -0x8(%rbp),%rax
  lea    D291(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L793
  mov    $0x4,%eax
  jmp    L1134
L793:
  mov    -0x8(%rbp),%rax
  lea    D255(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L915
  mov    $0x5,%eax
  jmp    L1134
L915:
  mov    -0x8(%rbp),%rax
  lea    D750(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L240
  mov    $0x6,%eax
  jmp    L1134
L240:
  mov    -0x8(%rbp),%rax
  lea    D854(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1681
  mov    $0x7,%eax
  jmp    L1134
L1681:
  mov    -0x8(%rbp),%rax
  lea    D431(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1088
  mov    $0x8,%eax
  jmp    L1134
L1088:
  mov    -0x8(%rbp),%rax
  lea    D794(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L694
  mov    $0x9,%eax
  jmp    L1134
L694:
  mov    -0x8(%rbp),%rax
  lea    D636(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1249
  mov    $0xa,%eax
  jmp    L1134
L1249:
  mov    -0x8(%rbp),%rax
  lea    D3(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L901
  mov    $0xb,%eax
  jmp    L1134
L901:
  mov    -0x8(%rbp),%rax
  lea    D610(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L356
  mov    $0xc,%eax
  jmp    L1134
L356:
  mov    -0x8(%rbp),%rax
  lea    D147(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L842
  mov    $0xd,%eax
  jmp    L1134
L842:
  mov    -0x8(%rbp),%rax
  lea    D639(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1057
  mov    $0xe,%eax
  jmp    L1134
L1057:
  mov    -0x8(%rbp),%rax
  lea    D584(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L319
  mov    $0xf,%eax
  jmp    L1134
L319:
  mov    -0x8(%rbp),%rax
  lea    D370(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1205
  mov    $0x10,%eax
  jmp    L1134
L1205:
  mov    -0x8(%rbp),%rax
  lea    D185(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L574
  mov    $0x11,%eax
  jmp    L1134
L574:
  mov    -0x8(%rbp),%rax
  lea    D363(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L281
  mov    $0x12,%eax
  jmp    L1134
L281:
  mov    -0x8(%rbp),%rax
  lea    D693(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L104
  mov    $0x13,%eax
  jmp    L1134
L104:
  mov    -0x8(%rbp),%rax
  lea    D774(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L462
  mov    $0x14,%eax
  jmp    L1134
L462:
  mov    -0x8(%rbp),%rax
  lea    D61(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L39
  mov    $0x15,%eax
  jmp    L1134
L39:
  mov    -0x8(%rbp),%rax
  lea    D526(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L126
  mov    $0x16,%eax
  jmp    L1134
L126:
  mov    -0x8(%rbp),%rax
  lea    D170(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1500
  mov    $0x17,%eax
  jmp    L1134
L1500:
  mov    -0x8(%rbp),%rax
  lea    D837(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L479
  mov    $0x18,%eax
  jmp    L1134
L479:
  mov    -0x8(%rbp),%rax
  lea    D437(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L166
  mov    $0x19,%eax
  jmp    L1134
L166:
  mov    -0x8(%rbp),%rax
  lea    D154(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L659
  mov    $0x1a,%eax
  jmp    L1134
L659:
  mov    -0x8(%rbp),%rax
  lea    D404(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L749
  mov    $0x1b,%eax
  jmp    L1134
L749:
  mov    -0x8(%rbp),%rax
  lea    D355(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L987
  mov    $0x1c,%eax
  jmp    L1134
L987:
  mov    -0x8(%rbp),%rax
  lea    D351(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L208
  mov    $0x1d,%eax
  jmp    L1134
L208:
  mov    -0x8(%rbp),%rax
  lea    D657(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L161
  mov    $0x1e,%eax
  jmp    L1134
L161:
  mov    -0x8(%rbp),%rax
  lea    D751(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1246
  mov    $0x1f,%eax
  jmp    L1134
L1246:
  mov    -0x8(%rbp),%rax
  lea    D80(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1590
  mov    $0x20,%eax
  jmp    L1134
L1590:
  mov    -0x8(%rbp),%rax
  lea    D463(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1722
  mov    $0x21,%eax
  jmp    L1134
L1722:
  mov    -0x8(%rbp),%rax
  lea    D707(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L626
  mov    $0x22,%eax
  jmp    L1134
L626:
  mov    -0x8(%rbp),%rax
  lea    D78(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1210
  mov    $0x23,%eax
  jmp    L1134
L1210:
  mov    -0x8(%rbp),%rax
  lea    D41(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1461
  mov    $0x24,%eax
  jmp    L1134
L1461:
  mov    -0x8(%rbp),%rax
  lea    D191(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1661
  mov    $0x25,%eax
  jmp    L1134
L1661:
  mov    -0x8(%rbp),%rax
  lea    D197(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L974
  mov    $0x26,%eax
  jmp    L1134
L974:
  mov    -0x8(%rbp),%rax
  lea    D678(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L967
  mov    $0x27,%eax
  jmp    L1134
L967:
  mov    -0x8(%rbp),%rax
  lea    D172(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1218
  mov    $0x28,%eax
  jmp    L1134
L1218:
  mov    -0x8(%rbp),%rax
  lea    D803(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L295
  mov    $0x29,%eax
  jmp    L1134
L295:
  mov    -0x8(%rbp),%rax
  lea    D371(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L312
  mov    $0x2a,%eax
  jmp    L1134
L312:
  mov    -0x8(%rbp),%rax
  lea    D186(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1536
  mov    $0x2b,%eax
  jmp    L1134
L1536:
  mov    -0x8(%rbp),%rax
  lea    D209(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L596
  mov    $0x2c,%eax
  jmp    L1134
L596:
  mov    -0x8(%rbp),%rax
  lea    D321(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L485
  mov    $0x2d,%eax
  jmp    L1134
L485:
  mov    -0x8(%rbp),%rax
  lea    D757(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L561
  mov    $0x2e,%eax
  jmp    L1134
L561:
  mov    -0x8(%rbp),%rax
  lea    D560(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L340
  mov    $0x2f,%eax
  jmp    L1134
L340:
  mov    -0x8(%rbp),%rax
  lea    D499(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L423
  mov    $0x30,%eax
  jmp    L1134
L423:
  mov    -0x8(%rbp),%rax
  lea    D662(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L899
  mov    $0x31,%eax
  jmp    L1134
L899:
  mov    -0x8(%rbp),%rax
  lea    D242(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1093
  mov    $0x32,%eax
  jmp    L1134
L1093:
  mov    -0x8(%rbp),%rax
  lea    D23(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1311
  mov    $0x33,%eax
  jmp    L1134
L1311:
  mov    -0x8(%rbp),%rax
  lea    D293(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1644
  mov    $0x34,%eax
  jmp    L1134
L1644:
  mov    -0x8(%rbp),%rax
  lea    D731(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L983
  mov    $0x35,%eax
  jmp    L1134
L983:
  mov    -0x8(%rbp),%rax
  lea    D510(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1274
  mov    $0x36,%eax
  jmp    L1134
L1274:
  mov    -0x8(%rbp),%rax
  lea    D547(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1153
  mov    $0x37,%eax
  jmp    L1134
L1153:
  mov    -0x8(%rbp),%rax
  lea    D784(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L102
  mov    $0x38,%eax
  jmp    L1134
L102:
  mov    -0x8(%rbp),%rax
  lea    D98(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L108
  mov    $0x39,%eax
  jmp    L1134
L108:
  mov    -0x8(%rbp),%rax
  lea    D107(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1716
  mov    $0x3a,%eax
  jmp    L1134
L1716:
  mov    -0x8(%rbp),%rax
  lea    D358(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L894
  mov    $0x3b,%eax
  jmp    L1134
L894:
  mov    -0x8(%rbp),%rax
  lea    D748(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1380
  mov    $0x3c,%eax
  jmp    L1134
L1380:
  mov    -0x8(%rbp),%rax
  lea    D533(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1477
  mov    $0x3d,%eax
  jmp    L1134
L1477:
  mov    -0x8(%rbp),%rax
  lea    D377(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L585
  mov    $0x3e,%eax
  jmp    L1134
L585:
  mov    -0x8(%rbp),%rax
  lea    D380(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1049
  mov    $0x3f,%eax
  jmp    L1134
L1049:
  mov    -0x8(%rbp),%rax
  lea    D476(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1577
  mov    $0x40,%eax
  jmp    L1134
L1577:
  mov    -0x8(%rbp),%rax
  lea    D719(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1563
  mov    $0x41,%eax
  jmp    L1134
L1563:
  mov    -0x8(%rbp),%rax
  lea    D733(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L184
  mov    $0x42,%eax
  jmp    L1134
L184:
  mov    -0x8(%rbp),%rax
  lea    D44(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L195
  mov    $0x43,%eax
  jmp    L1134
L195:
  mov    -0x8(%rbp),%rax
  lea    D305(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L101
  mov    $0x44,%eax
  jmp    L1134
L101:
  mov    -0x8(%rbp),%rax
  lea    D454(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L764
  mov    $0x45,%eax
  jmp    L1134
L764:
  mov    -0x8(%rbp),%rax
  lea    D54(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1307
  mov    $0x46,%eax
  jmp    L1134
L1307:
  mov    -0x8(%rbp),%rax
  lea    D406(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L86
  mov    $0x47,%eax
  jmp    L1134
L86:
  mov    -0x8(%rbp),%rax
  lea    D145(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L775
  mov    $0x48,%eax
  jmp    L1134
L775:
  mov    -0x8(%rbp),%rax
  lea    D141(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L122
  mov    $0x49,%eax
  jmp    L1134
L122:
  mov    -0x8(%rbp),%rax
  lea    D864(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L950
  mov    $0x4a,%eax
  jmp    L1134
L950:
  mov    -0x8(%rbp),%rax
  lea    D590(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1373
  mov    $0x4b,%eax
  jmp    L1134
L1373:
  mov    -0x8(%rbp),%rax
  lea    D9(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1156
  mov    $0x4c,%eax
  jmp    L1134
L1156:
  mov    -0x8(%rbp),%rax
  lea    D677(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L288
  mov    $0x4d,%eax
  jmp    L1134
L288:
  mov    -0x8(%rbp),%rax
  lea    D375(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1240
  mov    $0x4e,%eax
  jmp    L1134
L1240:
  mov    -0x8(%rbp),%rax
  lea    D848(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1027
  mov    $0x4f,%eax
  jmp    L1134
L1027:
  mov    -0x8(%rbp),%rax
  lea    D503(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L940
  mov    $0x50,%eax
  jmp    L1134
L940:
  mov    -0x8(%rbp),%rax
  lea    D527(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1444
  mov    $0x51,%eax
  jmp    L1134
L1444:
  mov    -0x8(%rbp),%rax
  lea    D632(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L628
  mov    $0x52,%eax
  jmp    L1134
L628:
  mov    -0x8(%rbp),%rax
  lea    D342(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1549
  mov    $0x53,%eax
  jmp    L1134
L1549:
  mov    -0x8(%rbp),%rax
  lea    D599(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1341
  mov    $0x54,%eax
  jmp    L1134
L1341:
  mov    -0x8(%rbp),%rax
  lea    D858(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L526
  mov    $0x55,%eax
  jmp    L1134
L526:
  mov    -0x8(%rbp),%rax
  lea    D31(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <strcmp@plt>
  test   %rax,%rax
  jne    L1468
  mov    $0x56,%eax
  jmp    L1134
L1468:
  mov    $0x0,%eax
L1134:
  leave
  ret
```

tool_calls: name: disassemble_data
arguments: tag: D554
type_guessed: string
name: disassemble_data
arguments: tag: D587
type_guessed: string
name: disassemble_data
arguments: tag: D180
type_guessed: string
name: disassemble_data
arguments: tag: D667
type_guessed: string
name: disassemble_data
arguments: tag: D291
type_guessed: string
name: disassemble_data
arguments: tag: D255
type_guessed: string
name: disassemble_data
arguments: tag: D750
type_guessed: string
name: disassemble_data
arguments: tag: D854
type_guessed: string
name: disassemble_data
arguments: tag: D431
type_guessed: string
name: disassemble_data
arguments: tag: D794
type_guessed: string
name: disassemble_data
arguments: tag: D636
type_guessed: string
name: disassemble_data
arguments: tag: D3
type_guessed: string
name: disassemble_data
arguments: tag: D610
type_guessed: string
name: disassemble_data
arguments: tag: D147
type_guessed: string
name: disassemble_data
arguments: tag: D639
type_guessed: string
name: disassemble_data
arguments: tag: D584
type_guessed: string
name: disassemble_data
arguments: tag: D370
type_guessed: string
name: disassemble_data
arguments: tag: D185
type_guessed: string
name: disassemble_data
arguments: tag: D363
type_guessed: string
name: disassemble_data
arguments: tag: D693
type_guessed: string
name: disassemble_data
arguments: tag: D774
type_guessed: string
name: disassemble_data
arguments: tag: D61
type_guessed: string
name: disassemble_data
arguments: tag: D526
type_guessed: string
name: disassemble_data
arguments: tag: D170
type_guessed: string
name: disassemble_data
arguments: tag: D837
type_guessed: string
name: disassemble_data
arguments: tag: D437
type_guessed: string
name: disassemble_data
arguments: tag: D154
type_guessed: string
name: disassemble_data
arguments: tag: D404
type_guessed: string
name: disassemble_data
arguments: tag: D355
type_guessed: string
name: disassemble_data
arguments: tag: D351
type_guessed: string
name: disassemble_data
arguments: tag: D657
type_guessed: string
name: disassemble_data
arguments: tag: D751
type_guessed: string
name: disassemble_data
arguments: tag: D80
type_guessed: string
name: disassemble_data
arguments: tag: D463
type_guessed: string
name: disassemble_data
arguments: tag: D707
type_guessed: string
name: disassemble_data
arguments: tag: D78
type_guessed: string
name: disassemble_data
arguments: tag: D41
type_guessed: string
name: disassemble_data
arguments: tag: D191
type_guessed: string
name: disassemble_data
arguments: tag: D197
type_guessed: string
name: disassemble_data
arguments: tag: D678
type_guessed: string
name: disassemble_data
arguments: tag: D172
type_guessed: string
name: disassemble_data
arguments: tag: D803
type_guessed: string
name: disassemble_data
arguments: tag: D371
type_guessed: string
name: disassemble_data
arguments: tag: D186
type_guessed: string
name: disassemble_data
arguments: tag: D209
type_guessed: string
name: disassemble_data
arguments: tag: D321
type_guessed: string
name: disassemble_data
arguments: tag: D757
type_guessed: string
name: disassemble_data
arguments: tag: D560
type_guessed: string
name: disassemble_data
arguments: tag: D499
type_guessed: string
name: disassemble_data
arguments: tag: D662
type_guessed: string
name: disassemble_data
arguments: tag: D242
type_guessed: string
name: disassemble_data
arguments: tag: D23
type_guessed: string
name: disassemble_data
arguments: tag: D293
type_guessed: string
name: disassemble_data
arguments: tag: D731
type_guessed: string
name: disassemble_data
arguments: tag: D510
type_guessed: string
name: disassemble_data
arguments: tag: D547
type_guessed: string
name: disassemble_data
arguments: tag: D784
type_guessed: string
name: disassemble_data
arguments: tag: D98
type_guessed: string
name: disassemble_data
arguments: tag: D107
type_guessed: string
name: disassemble_data
arguments: tag: D358
type_guessed: string
name: disassemble_data
arguments: tag: D748
type_guessed: string
name: disassemble_data
arguments: tag: D533
type_guessed: string
name: disassemble_data
arguments: tag: D377
type_guessed: string
name: disassemble_data
arguments: tag: D380
type_guessed: string
name: disassemble_data
arguments: tag: D476
type_guessed: string
name: disassemble_data
arguments: tag: D719
type_guessed: string
name: disassemble_data
arguments: tag: D733
type_guessed: string
name: disassemble_data
arguments: tag: D44
type_guessed: string
name: disassemble_data
arguments: tag: D305
type_guessed: string
name: disassemble_data
arguments: tag: D454
type_guessed: string
name: disassemble_data
arguments: tag: D54
type_guessed: string
name: disassemble_data
arguments: tag: D406
type_guessed: string
name: disassemble_data
arguments: tag: D145
type_guessed: string
name: disassemble_data
arguments: tag: D141
type_guessed: string
name: disassemble_data
arguments: tag: D864
type_guessed: string
name: disassemble_data
arguments: tag: D590
type_guessed: string
name: disassemble_data
arguments: tag: D9
type_guessed: string
name: disassemble_data
arguments: tag: D677
type_guessed: string
name: disassemble_data
arguments: tag: D375
type_guessed: string
name: disassemble_data
arguments: tag: D848
type_guessed: string
name: disassemble_data
arguments: tag: D503
type_guessed: string
name: disassemble_data
arguments: tag: D527
type_guessed: string
name: disassemble_data
arguments: tag: D632
type_guessed: string
name: disassemble_data
arguments: tag: D342
type_guessed: string
name: disassemble_data
arguments: tag: D599
type_guessed: string
name: disassemble_data
arguments: tag: D858
type_guessed: string
name: disassemble_data
arguments: tag: D31
type_guessed: string

tool: D554: unknown

tool: D587: ft

tool: D180: in

tool: D667: um

tool: D291: mils

tool: D255: microns

tool: D750: mm

tool: D854: ips

tool: D431: mm_sec

tool: D794: m_s

tool: D636: m_min

tool: D3: um_min

tool: D610: um_sec

tool: D147: ft_min

tool: D639: gs

tool: D584: m_s2

tool: D370: Amp

tool: D185: Amperage

tool: D363: bars

tool: D693: BOV

tool: D774: BTU

tool: D61: BTU_h

tool: D526: BTU_min

tool: D170: CFH

tool: D837: cfu_ml_log

tool: D437: count

tool: D154: CPM

tool: D404: deg_C

tool: D355: deg_F

tool: D351: deg_K

tool: D657: dynes

tool: D751: Ergs

tool: D80: fathoms

tool: D463: ft_lb

tool: D707: ft_lb_min

tool: D78: ft_lb_s

tool: D41: Gallons

tool: D191: gpm

tool: D197: hrs

tool: D678: Hz

tool: D172: Inches_H2O

tool: D803: inches_HG

tool: D371: J

tool: D186: J_s

tool: D209: kA

tool: D321: kg

tool: D757: kg_Cal

tool: D560: kg_Cal_min

tool: D499: kg_m

tool: D662: kg_cm2

tool: D242: Knots

tool: D23: kPa

tool: D293: kV

tool: D731: kva

tool: D510: kW

tool: D547: kWh

tool: D784: lbs

tool: D98: lbs_of_F

tool: D107: load

tool: D358: Loaded_Hours

tool: D748: Loaded_PSI

tool: D533: mA

tool: D377: min

tool: D380: minutes

tool: D476: Mohm

tool: D719: Moisture_PPM

tool: D733: mV

tool: D44: MW

tool: D305: N

tool: D454: Pa

tool: D54: Percent

tool: D406: pH

tool: D145: ppb

tool: D141: ppm

tool: D864: prtcls_mL

tool: D590: PSF

tool: D9: PSI

tool: D677: PSID

tool: D375: RPM

tool: D848: Torrs

tool: D503: Total_Acid_Number

tool: D527: uMhos

tool: D632: uS

tool: D342: uS_cm

tool: D599: V

tool: D858: Vdc

tool: D31: watts

assistant: ```c
int UOM_tfromString(char *UOM) {
  if (strcmp(UOM, "unknown") == 0) {
    return 0;
  }
  if (strcmp(UOM, "ft") == 0) {
    return 1;
  }
  if (strcmp(UOM, "in") == 0) {
    return 2;
  }
  if (strcmp(UOM, "um") == 0) {
    return 3;
  }
  if (strcmp(UOM, "mils") == 0) {
    return 4;
  }
  if (strcmp(UOM, "microns") == 0) {
    return 5;
  }
  if (strcmp(UOM, "mm") == 0) {
    return 6;
  }
  if (strcmp(UOM, "ips") == 0) {
    return 7;
  }
  if (strcmp(UOM, "mm_sec") == 0) {
    return 8;
  }
  if (strcmp(UOM, "m_s") == 0) {
    return 9;
  }
  if (strcmp(UOM, "m_min") == 0) {
    return 10;
  }
  if (strcmp(UOM, "um_min") == 0) {
    return 11;
  }
  if (strcmp(UOM, "um_sec") == 0) {
    return 12;
  }
  if (strcmp(UOM, "ft_min") == 0) {
    return 13;
  }
  if (strcmp(UOM, "gs") == 0) {
    return 14;
  }
  if (strcmp(UOM, "m_s2") == 0) {
    return 15;
  }
  if (strcmp(UOM, "Amp") == 0) {
    return 16;
  }
  if (strcmp(UOM, "Amperage") == 0) {
    return 17;
  }
  if (strcmp(UOM, "bars") == 0) {
    return 18;
  }
  if (strcmp(UOM, "BOV") == 0) {
    return 19;
  }
  if (strcmp(UOM, "BTU") == 0) {
    return 20;
  }
  if (strcmp(UOM, "BTU_h") == 0) {
    return 21;
  }
  if (strcmp(UOM, "BTU_min") == 0) {
    return 22;
  }
  if (strcmp(UOM, "CFH") == 0) {
    return 23;
  }
  if (strcmp(UOM, "cfu_ml_log") == 0) {
    return 24;
  }
  if (strcmp(UOM, "count") == 0) {
    return 25;
  }
  if (strcmp(UOM, "CPM") == 0) {
    return 26;
  }
  if (strcmp(UOM, "deg_C") == 0) {
    return 27;
  }
  if (strcmp(UOM, "deg_F") == 0) {
    return 28;
  }
  if (strcmp(UOM, "deg_K") == 0) {
    return 29;
  }
  if (strcmp(UOM, "dynes") == 0) {
    return 30;
  }
  if (strcmp(UOM, "Ergs") == 0) {
    return 31;
  }
  if (strcmp(UOM, "fathoms") == 0) {
    return 32;
  }
  if (strcmp(UOM, "ft_lb") == 0) {
    return 33;
  }
  if (strcmp(UOM, "ft_lb_min") == 0) {
    return 34;
  }
  if (strcmp(UOM, "ft_lb_s") == 0) {
    return 35;
  }
  if (strcmp(UOM, "Gallons") == 0) {
    return 36;
  }
  if (strcmp(UOM, "gpm") == 0) {
    return 37;
  }
  if (strcmp(UOM, "hrs") == 0) {
    return 38;
  }
  if (strcmp(UOM, "Hz") == 0) {
    return 39;
  }
  if (strcmp(UOM, "Inches_H2O") == 0) {
    return 40;
  }
  if (strcmp(UOM, "inches_HG") == 0) {
    return 41;
  }
  if (strcmp(UOM, "J") == 0) {
    return 42;
  }
  if (strcmp(UOM, "J_s") == 0) {
    return 43;
  }
  if (strcmp(UOM, "kA") == 0) {
    return 44;
  }
  if (strcmp(UOM, "kg") == 0) {
    return 45;
  }
  if (strcmp(UOM, "kg_Cal") == 0) {
    return 46;
  }
  if (strcmp(UOM, "kg_Cal_min") == 0) {
    return 47;
  }
  if (strcmp(UOM, "kg_m") == 0) {
    return 48;
  }
  if (strcmp(UOM, "kg_cm2") == 0) {
    return 49;
  }
  if (strcmp(UOM, "Knots") == 0) {
    return 50;
  }
  if (strcmp(UOM, "kPa") == 0) {
    return 51;
  }
  if (strcmp(UOM, "kV") == 0) {
    return 52;
  }
  if (strcmp(UOM, "kva") == 0) {
    return 53;
  }
  if (strcmp(UOM, "kW") == 0) {
    return 54;
  }
  if (strcmp(UOM, "kWh") == 0) {
    return 55;
  }
  if (strcmp(UOM, "lbs") == 0) {
    return 56;
  }
  if (strcmp(UOM, "lbs_of_F") == 0) {
    return 57;
  }
  if (strcmp(UOM, "load") == 0) {
    return 58;
  }
  if (strcmp(UOM, "Loaded_Hours") == 0) {
    return 59;
  }
  if (strcmp(UOM, "Loaded_PSI") == 0) {
    return 60;
  }
  if (strcmp(UOM, "mA") == 0) {
    return 61;
  }
  if (strcmp(UOM, "min") == 0) {
    return 62;
  }
  if (strcmp(UOM, "minutes") == 0) {
    return 63;
  }
  if (strcmp(UOM, "Mohm") == 0) {
    return 64;
  }
  if (strcmp(UOM, "Moisture_PPM") == 0) {
    return 65;
  }
  if (strcmp(UOM, "mV") == 0) {
    return 66;
  }
  if (strcmp(UOM, "MW") == 0) {
    return 67;
  }
  if (strcmp(UOM, "N") == 0) {
    return 68;
  }
  if (strcmp(UOM, "Pa") == 0) {
    return 69;
  }
  if (strcmp(UOM, "Percent") == 0) {
    return 70;
  }
  if (strcmp(UOM, "pH") == 0) {
    return 71;
  }
  if (strcmp(UOM, "ppb") == 0) {
    return 72;
  }
  if (strcmp(UOM, "ppm") == 0) {
    return 73;
  }
  if (strcmp(UOM, "prtcls_mL") == 0) {
    return 74;
  }
  if (strcmp(UOM, "PSF") == 0) {
    return 75;
  }
  if (strcmp(UOM, "PSI") == 0) {
    return 76;
  }
  if (strcmp(UOM, "PSID") == 0) {
    return 77;
  }
  if (strcmp(UOM, "RPM") == 0) {
    return 78;
  }
  if (strcmp(UOM, "Torrs") == 0) {
    return 79;
  }
  if (strcmp(UOM, "Total_Acid_Number") == 0) {
    return 80;
  }
  if (strcmp(UOM, "uMhos") == 0) {
    return 81;
  }
  if (strcmp(UOM, "uS") == 0) {
    return 82;
  }
  if (strcmp(UOM, "uS_cm") == 0) {
    return 83;
  }
  if (strcmp(UOM, "V") == 0) {
    return 84;
  }
  if (strcmp(UOM, "Vdc") == 0) {
    return 85;
  }
  if (strcmp(UOM, "watts") == 0) {
    return 86;
  }
  return 0;
}
```