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

```asm
<printallconst>:
  endbr64
  push   %rbp
  lea    D151(%rip),%rdx
  lea    D187(%rip),%rsi
  xor    %eax,%eax
  lea    D335(%rip),%rdi
  lea    D312(%rip),%rbp
  call   <printf@plt>
  mov    $0xc,%esi
  lea    D190(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x1,%esi
  lea    D101(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x7,%esi
  lea    D257(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  xor    %esi,%esi
  lea    D41(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x4,%esi
  lea    D183(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x8,%esi
  lea    D224(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0xc,%esi
  lea    D95(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    %rbp,%rdi
  mov    $0x4,%esi
  xor    %eax,%eax
  call   <printf@plt>
  mov    %rbp,%rdi
  mov    $0x4,%esi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x4,%esi
  lea    D265(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x890000,%esi
  lea    D180(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x4000,%esi
  lea    D83(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x4,%esi
  lea    D291(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x4,%esi
  lea    D373(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x900000,%esi
  lea    D48(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x40000,%esi
  lea    D205(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x40,%esi
  lea    D301(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x24,%esi
  lea    D268(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0xb00000,%esi
  lea    D9(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x4000,%esi
  lea    D55(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x24,%esi
  lea    D46(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x40,%esi
  lea    D212(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0xc00000,%esi
  lea    D130(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x400,%esi
  lea    D152(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0xc20000,%esi
  lea    D106(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x200,%esi
  lea    D192(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x10,%esi
  lea    D294(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x40,%esi
  lea    D69(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x24,%esi
  lea    D351(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0xc10000,%esi
  lea    D131(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x400,%esi
  lea    D139(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x10c,%esi
  lea    D99(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x100000,%esi
  lea    D253(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x280000,%esi
  lea    D226(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0xc,%esi
  lea    D179(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    $0x8,%esi
  xor    %eax,%eax
  pop    %rbp
  lea    D162(%rip),%rdi
  jmp    1050 <printf@plt>
```

tool_calls: name: read_data
arguments: label: D151
type_guessed: string
name: read_data
arguments: label: D187
type_guessed: string
name: read_data
arguments: label: D335
type_guessed: string
name: read_data
arguments: label: D312
type_guessed: string
name: read_data
arguments: label: D190
type_guessed: string
name: read_data
arguments: label: D101
type_guessed: string
name: read_data
arguments: label: D257
type_guessed: string
name: read_data
arguments: label: D41
type_guessed: string
name: read_data
arguments: label: D183
type_guessed: string
name: read_data
arguments: label: D224
type_guessed: string
name: read_data
arguments: label: D95
type_guessed: string
name: read_data
arguments: label: D265
type_guessed: string
name: read_data
arguments: label: D180
type_guessed: string
name: read_data
arguments: label: D83
type_guessed: string
name: read_data
arguments: label: D291
type_guessed: string
name: read_data
arguments: label: D373
type_guessed: string
name: read_data
arguments: label: D48
type_guessed: string
name: read_data
arguments: label: D205
type_guessed: string
name: read_data
arguments: label: D301
type_guessed: string
name: read_data
arguments: label: D268
type_guessed: string
name: read_data
arguments: label: D9
type_guessed: string
name: read_data
arguments: label: D55
type_guessed: string
name: read_data
arguments: label: D46
type_guessed: string
name: read_data
arguments: label: D212
type_guessed: string
name: read_data
arguments: label: D130
type_guessed: string
name: read_data
arguments: label: D152
type_guessed: string
name: read_data
arguments: label: D106
type_guessed: string
name: read_data
arguments: label: D192
type_guessed: string
name: read_data
arguments: label: D294
type_guessed: string
name: read_data
arguments: label: D69
type_guessed: string
name: read_data
arguments: label: D351
type_guessed: string
name: read_data
arguments: label: D131
type_guessed: string
name: read_data
arguments: label: D139
type_guessed: string
name: read_data
arguments: label: D99
type_guessed: string
name: read_data
arguments: label: D253
type_guessed: string
name: read_data
arguments: label: D226
type_guessed: string
name: read_data
arguments: label: D179
type_guessed: string
name: read_data
arguments: label: D162
type_guessed: string

tool: D151: 07:25:04

tool: D187: Mar 19 2022

tool: D335: Compiled %s %s


tool: D312: INR_FC_ActT_entry_length:0x%lx


tool: D190: EMH_hash_revision:0x%lx


tool: D101: INR_HashT_EMA_impl:0x%lx


tool: D257: C_MMI_ADDR_MAP_REVISION:0x%lx


tool: D41: C_SUB_ADDR_COMMON_TN_MAJOR_REV:0x%lx


tool: D183: C_SUB_ADDR_COMMON_TN_MINOR_REV:0x%lx


tool: D224: C_SUB_ADDR_COMMON_USER_REV:0x%lx


tool: D95: C_SUB_ADDR_COMMON_ADDR_MAP_REV:0x%lx


tool: D265: INR_FC_ActT_entry_length_memcpy:0x%lx


tool: D180: INR_FC_ActT_base:0x%lx


tool: D83: INR_FC_ActT_length:0x%lx


tool: D291: INR_FC_EMH_HashTable_entry_length:0x%lx


tool: D373: INR_FC_EMH_HashTable_entry_length_memcpy:0x%lx


tool: D48: INR_FC_EMH_HashTable_base:0x%lx


tool: D205: INR_FC_EMH_HashTable_length:0x%lx


tool: D301: INR_FC_EMH_RuleTable_entry_length:0x%lx


tool: D268: INR_FC_EMH_RuleTable_entry_length_memcpy:0x%lx


tool: D9: INR_FC_EMH_RuleTable_base:0x%lx


tool: D55: INR_FC_EMH_RuleTable_length:0x%lx


tool: D46: INR_FC_EMH_CTable_entry_length_memcpy:0x%lx


tool: D212: INR_FC_EMH_CTable_entry_length:0x%lx


tool: D130: INR_FC_EMH_CTable_base:0x%lx


tool: D152: INR_FC_EMH_CTable_length:0x%lx


tool: D106: INR_FC_EMA_TCAM_base:0x%lx


tool: D192: INR_FC_EMA_TCAM_length:0x%lx


tool: D294: INR_FC_EMA_TCAM_entry_length:0x%lx


tool: D69: INR_FC_EMA_RuleTable_entry_length:0x%lx


tool: D351: INR_FC_EMA_RuleTable_entry_length_memcpy:0x%lx


tool: D131: INR_FC_EMA_RuleTable_base:0x%lx


tool: D139: INR_FC_EMA_RuleTable_length:0x%lx


tool: D99: INR_ACCDP_available:0x%lx


tool: D253: INR_ACC_FIELD_TABLE_0:0x%lx


tool: D226: INR_ACC_FIELD_TABLE_1:0x%lx


tool: D179: INR_ACCDP_entry_length:0x%lx


tool: D162: INR_ACCDP_length:0x%lx


assistant: ```c
void printallconst() {
  printf("Compiled %s %s\n", "Mar 19 2022", "07:25:04");
  printf("EMH_hash_revision"
         ":0x%lx\n",
         12);
  printf("INR_HashT_EMA_impl"
         ":0x%lx\n",
         1);
  printf("C_MMI_ADDR_MAP_REVISION"
         ":0x%lx\n",
         7);
  printf("C_SUB_ADDR_COMMON_TN_MAJOR_REV"
         ":0x%lx\n",
         0x000);
  printf("C_SUB_ADDR_COMMON_TN_MINOR_REV"
         ":0x%lx\n",
         0x004);
  printf("C_SUB_ADDR_COMMON_USER_REV"
         ":0x%lx\n",
         0x008);
  printf("C_SUB_ADDR_COMMON_ADDR_MAP_REV"
         ":0x%lx\n",
         0x00C);
  printf("INR_FC_ActT_entry_length"
         ":0x%lx\n",
         4);
  printf("INR_FC_ActT_entry_length"
         ":0x%lx\n",
         4);
  printf("INR_FC_ActT_entry_length_memcpy"
         ":0x%lx\n",
         4);
  printf("INR_FC_ActT_base"
         ":0x%lx\n",
         (0x8900 << 8));
  printf("INR_FC_ActT_length"
         ":0x%lx\n",
         ((((0x89FF + 1) << 8) - (0x8900 << 8)) / 4));
  printf("INR_FC_EMH_HashTable_entry_length"
         ":0x%lx\n",
         4);
  printf("INR_FC_EMH_HashTable_entry_length_memcpy"
         ":0x%lx\n",
         4);
  printf("INR_FC_EMH_HashTable_base"
         ":0x%lx\n",
         (0x9000 << 8));
  printf("INR_FC_EMH_HashTable_length"
         ":0x%lx\n",
         ((((0x9FFF + 1) << 8) - (0x9000 << 8)) / 4));
  printf("INR_FC_EMH_RuleTable_entry_length"
         ":0x%lx\n",
         64);
  printf("INR_FC_EMH_RuleTable_entry_length_memcpy"
         ":0x%lx\n",
         36);
  printf("INR_FC_EMH_RuleTable_base"
         ":0x%lx\n",
         (0xB000 << 8));
  printf("INR_FC_EMH_RuleTable_length"
         ":0x%lx\n",
         ((((0xBFFF + 1) << 8) - (0xB000 << 8)) / 64));
  printf("INR_FC_EMH_CTable_entry_length_memcpy"
         ":0x%lx\n",
         36);
  printf("INR_FC_EMH_CTable_entry_length"
         ":0x%lx\n",
         64);
  printf("INR_FC_EMH_CTable_base"
         ":0x%lx\n",
         (0xC000 << 8));
  printf("INR_FC_EMH_CTable_length"
         ":0x%lx\n",
         ((((0xC0FF + 1) << 8) - (0xC000 << 8)) / 64));
  printf("INR_FC_EMA_TCAM_base"
         ":0x%lx\n",
         (0xC200 << 8));
  printf("INR_FC_EMA_TCAM_length"
         ":0x%lx\n",
         ((((0xC21F + 1) << 8) - (0xC200 << 8)) / 16));
  printf("INR_FC_EMA_TCAM_entry_length"
         ":0x%lx\n",
         16);
  printf("INR_FC_EMA_RuleTable_entry_length"
         ":0x%lx\n",
         64);
  printf("INR_FC_EMA_RuleTable_entry_length_memcpy"
         ":0x%lx\n",
         36);
  printf("INR_FC_EMA_RuleTable_base"
         ":0x%lx\n",
         (0xC100 << 8));
  printf("INR_FC_EMA_RuleTable_length"
         ":0x%lx\n",
         ((((0xC1FF + 1) << 8) - (0xC100 << 8)) / 64));
  printf("INR_ACCDP_available"
         ":0x%lx\n",
         (0x10C));
  printf("INR_ACC_FIELD_TABLE_0"
         ":0x%lx\n",
         (0x1000 << 8));
  printf("INR_ACC_FIELD_TABLE_1"
         ":0x%lx\n",
         (0x2800 << 8));
  printf("INR_ACCDP_entry_length"
         ":0x%lx\n",
         12);
  printf("INR_ACCDP_length"
         ":0x%lx\n",
         8);
}
```