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

```asm
<str_dict__constname>:
  endbr64
  lea    D128(%rip),%rax
  cmp    $0x10110000,%edi
  je     L112
  jg     L44
  lea    D250(%rip),%rax
  cmp    $0x10070000,%edi
  je     L112
  jle    L84
  lea    D189(%rip),%rax
  cmp    $0x100c0000,%edi
  je     L112
  jle    L80
  lea    D103(%rip),%rax
  cmp    $0x100d0000,%edi
  je     L112
  cmp    $0x10100000,%edi
  lea    D22(%rip),%rdx
  lea    D169(%rip),%rax
  cmove  %rdx,%rax
  ret
L28:
  lea    D198(%rip),%rax
  cmp    $0x10180002,%edi
  je     L112
  cmp    $0x10180003,%edi
  jne    L212
  lea    D240(%rip),%rax
L112:
  ret
L80:
  lea    D40(%rip),%rax
  cmp    $0x10090000,%edi
  je     L112
  cmp    $0x100a0000,%edi
  jne    L43
  lea    D135(%rip),%rax
  ret
  nopl   (%rax)
L84:
  lea    D339(%rip),%rax
  cmp    $0x10030000,%edi
  je     L112
  jle    L187
  lea    D267(%rip),%rax
  cmp    $0x10050000,%edi
  je     L112
  cmp    $0x10060000,%edi
  lea    D105(%rip),%rdx
  lea    D169(%rip),%rax
  cmove  %rdx,%rax
  ret
  nopl   (%rax)
L44:
  lea    D141(%rip),%rax
  cmp    $0x10180000,%edi
  je     L112
  jle    L258
  lea    D171(%rip),%rax
  cmp    $0x10200000,%edi
  je     L112
  jle    L28
  lea    D319(%rip),%rax
  cmp    $0x10210000,%edi
  je     L112
  cmp    $0x10220000,%edi
  lea    D275(%rip),%rdx
  lea    D169(%rip),%rax
  cmove  %rdx,%rax
  ret
L43:
  cmp    $0x10080000,%edi
  lea    D168(%rip),%rdx
  lea    D169(%rip),%rax
  cmove  %rdx,%rax
  ret
L187:
  lea    D136(%rip),%rax
  cmp    $0x10010000,%edi
  je     L112
  cmp    $0x10020000,%edi
  jne    L230
  lea    D74(%rip),%rax
  ret
  cs nopw 0x0(%rax,%rax,1)
L258:
  lea    D129(%rip),%rax
  cmp    $0x10150000,%edi
  je     L112
  jle    L21
  lea    D158(%rip),%rax
  cmp    $0x10160000,%edi
  je     L112
  cmp    $0x10170000,%edi
  lea    D225(%rip),%rdx
  lea    D169(%rip),%rax
  cmove  %rdx,%rax
  ret
L230:
  cmp    $0x10000000,%edi
  lea    D309(%rip),%rdx
  lea    D169(%rip),%rax
  cmove  %rdx,%rax
  ret
L212:
  cmp    $0x10180001,%edi
  lea    D231(%rip),%rdx
  lea    D169(%rip),%rax
  cmove  %rdx,%rax
  ret
L21:
  lea    D36(%rip),%rax
  cmp    $0x10130000,%edi
  je     L112
  cmp    $0x10140000,%edi
  jne    L218
  lea    D81(%rip),%rax
  ret
L218:
  cmp    $0x10120000,%edi
  lea    D59(%rip),%rdx
  lea    D169(%rip),%rax
  cmove  %rdx,%rax
  ret
```

tool_calls: name: read_data
arguments: tag: D128
type_infered: string
name: read_data
arguments: tag: D250
type_infered: string
name: read_data
arguments: tag: D189
type_infered: string
name: read_data
arguments: tag: D103
type_infered: string
name: read_data
arguments: tag: D22
type_infered: string
name: read_data
arguments: tag: D169
type_infered: string
name: read_data
arguments: tag: D198
type_infered: string
name: read_data
arguments: tag: D240
type_infered: string
name: read_data
arguments: tag: D40
type_infered: string
name: read_data
arguments: tag: D135
type_infered: string
name: read_data
arguments: tag: D339
type_infered: string
name: read_data
arguments: tag: D267
type_infered: string
name: read_data
arguments: tag: D105
type_infered: string
name: read_data
arguments: tag: D141
type_infered: string
name: read_data
arguments: tag: D171
type_infered: string
name: read_data
arguments: tag: D319
type_infered: string
name: read_data
arguments: tag: D275
type_infered: string
name: read_data
arguments: tag: D168
type_infered: string
name: read_data
arguments: tag: D136
type_infered: string
name: read_data
arguments: tag: D74
type_infered: string
name: read_data
arguments: tag: D129
type_infered: string
name: read_data
arguments: tag: D158
type_infered: string
name: read_data
arguments: tag: D225
type_infered: string
name: read_data
arguments: tag: D309
type_infered: string
name: read_data
arguments: tag: D231
type_infered: string
name: read_data
arguments: tag: D36
type_infered: string
name: read_data
arguments: tag: D81
type_infered: string
name: read_data
arguments: tag: D59
type_infered: string

tool: D128: RESTORE_DEFAULT_PARAMETERS

tool: D250: SYNCHRONOUS_WINDOW_LENGTH

tool: D189: GUARD_TIME

tool: D103: LIFE_TIME_FACTOR

tool: D22: STORE_PARAMETERS

tool: D169: UNKNOWN

tool: D198: PRODUCT_CODE

tool: D240: REVISION_NUMBER

tool: D40: MANUFACTURER_HARDWARE_VERSION

tool: D135: MANUFACTURER_SOFTWARE_VERSION

tool: D339: PREDEFINED_ERROR_FIELD_COUNT

tool: D267: SYNC_COB_ID

tool: D105: COMMUNICATION_CYCLE_PERIOD

tool: D141: IDENTITY_COUNT

tool: D171: VERIFY_CONFIGURATION

tool: D319: STORE_EDS

tool: D275: STORAGE_FORMAT

tool: D168: MANUFACTURER_DEVICE_NAME

tool: D136: ERROR_REGISTER

tool: D74: MANUFACTURER_STATUS_REGISTER

tool: D129: EMERGENCY_INHIBIT_TIME

tool: D158: CONSUMER_HEARTBEAT_TIME

tool: D225: PRODUCER_HEARTBEAT_TIME

tool: D309: DEVICE_TYPE

tool: D231: VENDOR_ID

tool: D36: HIGH_RESULUTION_TIME_STAMP

tool: D81: EMERGENCY_COB_ID

tool: D59: TIME_COB_ID

assistant: ```c
const char *str_dict__constname(uint32_t mux) {
  switch (mux) {
  case ((0x1000 << 16) | 0):
    return "DEVICE_TYPE";
  case ((0x1001 << 16) | 0):
    return "ERROR_REGISTER";
  case ((0x1002 << 16) | 0):
    return "MANUFACTURER_STATUS_REGISTER";
  case ((0x1003 << 16) | 0):
    return "PREDEFINED_ERROR_FIELD_COUNT";
  case ((0x1005 << 16) | 0):
    return "SYNC_COB_ID";
  case ((0x1006 << 16) | 0):
    return "COMMUNICATION_CYCLE_PERIOD";
  case ((0x1007 << 16) | 0):
    return "SYNCHRONOUS_WINDOW_LENGTH";
  case ((0x1008 << 16) | 0):
    return "MANUFACTURER_DEVICE_NAME";
  case ((0x1009 << 16) | 0):
    return "MANUFACTURER_HARDWARE_VERSION";
  case ((0x100A << 16) | 0):
    return "MANUFACTURER_SOFTWARE_VERSION";
  case ((0x100C << 16) | 0):
    return "GUARD_TIME";
  case ((0x100D << 16) | 0):
    return "LIFE_TIME_FACTOR";
  case ((0x1010 << 16) | 0):
    return "STORE_PARAMETERS";
  case ((0x1011 << 16) | 0):
    return "RESTORE_DEFAULT_PARAMETERS";
  case ((0x1012 << 16) | 0):
    return "TIME_COB_ID";
  case ((0x1013 << 16) | 0):
    return "HIGH_RESULUTION_TIME_STAMP";
  case ((0x1014 << 16) | 0):
    return "EMERGENCY_COB_ID";
  case ((0x1015 << 16) | 0):
    return "EMERGENCY_INHIBIT_TIME";
  case ((0x1016 << 16) | 0):
    return "CONSUMER_HEARTBEAT_TIME";
  case ((0x1017 << 16) | 0):
    return "PRODUCER_HEARTBEAT_TIME";
  case ((0x1018 << 16) | 0):
    return "IDENTITY_COUNT";
  case ((0x1018 << 16) | 1):
    return "VENDOR_ID";
  case ((0x1018 << 16) | 2):
    return "PRODUCT_CODE";
  case ((0x1018 << 16) | 3):
    return "REVISION_NUMBER";
  case ((0x1020 << 16) | 0):
    return "VERIFY_CONFIGURATION";
  case ((0x1021 << 16) | 0):
    return "STORE_EDS";
  case ((0x1022 << 16) | 0):
    return "STORAGE_FORMAT";
  default:
    return "UNKNOWN";
  }
}
```