
int display_debug_names(dwarf_section *section,void *file)

{
  int *piVar1;
  int *piVar2;
  uchar *puVar3;
  long lVar4;
  uint uVar5;
  ulong uVar6;
  char *pcVar7;
  ulong uVar8;
  char *pcVar9;
  char *message;
  elf_vma eVar10;
  dwarf_vma dVar11;
  dwarf_vma *pdVar12;
  dwarf_vma dVar13;
  dwarf_vma *__ptr;
  dwarf_vma *pdVar14;
  undefined1 *puVar15;
  elf_vma eVar16;
  uint *puVar17;
  dwarf_section *in_RDX;
  uint uVar18;
  int iVar19;
  int iVar20;
  int iVar21;
  undefined *puVar22;
  uint *puVar23;
  int *piVar24;
  ulong uVar25;
  long lVar26;
  uchar *puVar27;
  int *piVar28;
  int *piVar29;
  int *piVar30;
  bool bVar31;
  ulong local_d0;
  int *local_c8;
  ulong local_c0;
  ulong local_b8;
  ulong local_b0;
  long local_a8;
  dwarf_vma local_a0;
  int *local_98;
  ulong local_90;
  uint local_88;
  uint local_84;
  uint local_70;
  uint bytes_read;
  
  piVar2 = (int *)section->start;
  piVar28 = (int *)((long)piVar2 + section->size);
  introduce((dwarf_section *)section->name,(int)section + 0x18,in_RDX);
  load_debug_section_with_follow(str,file);
joined_r0x0011898e:
  if (piVar2 < piVar28) {
    piVar29 = piVar2 + 1;
    piVar30 = piVar29;
    if (piVar29 < piVar28) {
      iVar19 = 4;
LAB_00118a58:
      eVar10 = (*byte_get)((uchar *)piVar2,iVar19);
      local_88 = 4;
      if (eVar10 == 0xffffffff) {
        piVar30 = piVar2 + 3;
        if (piVar30 < piVar28) {
          iVar19 = 8;
        }
        else if ((piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)) {
          local_88 = 8;
          goto LAB_001189c5;
        }
        eVar10 = (*byte_get)((uchar *)piVar29,iVar19);
        local_88 = 8;
      }
      local_c8 = (int *)((long)piVar30 + eVar10);
      uVar8 = (long)piVar30 - (long)section->start;
      uVar6 = uVar8 + eVar10;
      if (!CARRY8(uVar8,eVar10)) goto LAB_001189d9;
LAB_00118a9b:
      pcVar9 = dwarf_vmatoa_1("x",eVar10,0);
      pcVar7 = section->name;
      puVar27 = section->start;
      message = (char *)dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);
      warn(message,pcVar7,(long)piVar2 - (long)puVar27,pcVar9);
      iVar19 = 0;
    }
    else {
      iVar19 = (int)piVar28 - (int)piVar2;
      if (iVar19 - 1U < 8) goto LAB_00118a58;
      local_88 = 4;
LAB_001189c5:
      eVar10 = 0;
      uVar6 = (long)piVar30 - (long)section->start;
      local_c8 = piVar30;
LAB_001189d9:
      if (section->size < uVar6) goto LAB_00118a9b;
      piVar29 = (int *)((long)piVar30 + 2);
      iVar19 = (int)eVar10;
      if (piVar29 < local_c8) {
        iVar20 = 2;
LAB_00118af5:
        eVar10 = (*byte_get)((uchar *)piVar30,iVar20);
        pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);
        printf(pcVar7,eVar10 & 0xffff);
        if ((short)eVar10 != 5) goto LAB_00118a22;
        piVar24 = piVar30 + 1;
        iVar20 = (int)local_c8;
        if (piVar24 < local_c8) {
          iVar21 = 2;
LAB_00119876:
          eVar10 = (*byte_get)((uchar *)piVar29,iVar21);
          if ((short)eVar10 != 0) {
            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)
            ;
            warn(pcVar7,eVar10 & 0xffff);
          }
          if (piVar30 + 2 < local_c8) {
LAB_00118b5e:
            iVar19 = 4;
          }
          else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))
          goto LAB_00118b74;
          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);
          local_70 = (uint)eVar10;
          if (local_70 == 0) goto LAB_00118b74;
        }
        else {
          if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;
          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;
LAB_00118b74:
          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);
          warn(pcVar7);
          local_70 = 0;
        }
        piVar24 = piVar30 + 2;
        piVar29 = piVar30 + 3;
        if (piVar29 < local_c8) {
          iVar19 = 4;
LAB_00119825:
          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);
          uVar5 = (uint)eVar10;
          if (piVar30 + 4 < local_c8) {
LAB_001197d8:
            iVar19 = 4;
          }
          else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))
          goto LAB_00118bd4;
          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);
          local_98._0_4_ = (uint)eVar10;
          if (piVar30 + 5 < local_c8) goto LAB_001195e0;
          if ((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))
          goto LAB_001195e5;
LAB_00118beb:
          local_b8 = 0;
          local_84 = 0;
          local_90 = 0;
          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;
LAB_0011975e:
          eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);
          local_a0._0_4_ = (int)eVar10;
          local_d0 = eVar10 & 0xffffffff;
          local_b0 = (ulong)((int)local_a0 * local_88);
          local_a8 = local_d0 << 2;
          iVar19 = (int)local_a0;
          if (piVar30 + 7 < local_c8) {
LAB_00119667:
            local_a0._0_4_ = iVar19;
            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);
            if (piVar30 + 8 < local_c8) goto LAB_00119860;
            local_c0 = local_c0 & 0xffffffff;
            iVar19 = iVar20 - ((int)piVar30 + 0x1c);
            if (7 < iVar19 - 1U) goto LAB_00118c5e;
          }
          else {
            iVar19 = iVar20 - (int)(piVar30 + 6);
            if (7 < iVar19 - 1U) goto LAB_00118c46;
            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);
            if (local_c8 <= piVar30 + 8) {
              local_c0 = local_c0 & 0xffffffff;
              goto LAB_00118c5e;
            }
LAB_00119860:
            local_c0 = local_c0 & 0xffffffff;
LAB_00119867:
            iVar19 = 4;
          }
          piVar29 = piVar30 + 8;
          eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19);
          iVar19 = (int)eVar10;
          if ((eVar10 & 3) != 0) {
            pcVar7 = (char *)dcgettext(0,
                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"
                                       ,5);
            iVar19 = (-iVar19 & 3U) + iVar19;
            warn(pcVar7,eVar10 & 0xffffffff);
          }
          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);
          printf(pcVar7);
          if (iVar19 != 0) {
            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);
            piVar24 = piVar29;
            do {
              piVar1 = (int *)((long)piVar24 + 1);
              if (piVar1 < local_c8) {
                iVar19 = 1;
LAB_00119753:
                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);
                uVar6 = eVar10 & 0xff;
              }
              else {
                uVar6 = 0;
                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))
                goto LAB_00119753;
              }
              printf(" %02x",uVar6);
              piVar24 = piVar1;
              piVar29 = piVar30;
            } while (piVar1 != piVar30);
          }
        }
        else {
          if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))
          goto LAB_00119825;
          uVar5 = 0;
          if (piVar30 + 4 < local_c8) goto LAB_001197d8;
LAB_00118bd4:
          local_98._0_4_ = 0;
          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;
LAB_001195e0:
          iVar19 = 4;
LAB_001195e5:
          piVar29 = piVar30 + 5;
          eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);
          local_84 = (uint)eVar10;
          local_b8 = eVar10 & 0xffffffff;
          local_90 = local_b8 << 2;
          if (piVar30 + 6 < local_c8) goto LAB_0011975e;
          if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {
LAB_00118c14:
            local_a8 = 0;
            local_d0 = 0;
            local_b0 = 0;
            local_a0._0_4_ = 0;
            iVar19 = (int)local_a0;
            local_a0._0_4_ = 0;
            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;
            goto LAB_00119667;
          }
          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);
          local_a0._0_4_ = (int)eVar10;
          local_d0 = eVar10 & 0xffffffff;
          local_b0 = (ulong)((int)local_a0 * local_88);
          local_a8 = local_d0 << 2;
          iVar19 = (int)local_a0;
          if (piVar30 + 7 < local_c8) goto LAB_00119667;
LAB_00118c46:
          local_c0 = 0;
          if (piVar30 + 8 < local_c8) goto LAB_00119867;
LAB_00118c5e:
          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);
          printf(pcVar7);
          piVar29 = piVar30 + 8;
        }
        putc(10,stdout);
        putc(10,stdout);
        pcVar7 = (char *)dcgettext(0,"CU table:\n",5);
        printf(pcVar7);
        if (local_70 != 0) {
          uVar8 = (ulong)local_88;
          uVar6 = 0;
          piVar30 = piVar29;
          do {
            uVar25 = uVar6;
            piVar24 = (int *)((long)piVar30 + uVar8);
            uVar18 = local_88;
            if ((piVar24 < local_c8) ||
               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&
                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {
              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);
            }
            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);
            uVar18 = (int)uVar25 + 1;
            printf(pcVar7,uVar25,eVar10);
            uVar6 = (ulong)uVar18;
            piVar30 = piVar24;
          } while (uVar18 != local_70);
          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1));
        }
        putc(10,stdout);
        pcVar7 = (char *)dcgettext(0,"TU table:\n",5);
        printf(pcVar7);
        if (uVar5 != 0) {
          uVar8 = (ulong)local_88;
          uVar6 = 0;
          piVar30 = piVar29;
          while( true ) {
            piVar24 = (int *)((long)piVar30 + uVar8);
            uVar18 = local_88;
            if ((piVar24 < local_c8) ||
               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&
                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {
              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);
            }
            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);
            printf(pcVar7,uVar6,eVar10);
            uVar18 = (int)uVar6 + 1;
            if (uVar18 == uVar5) break;
            uVar6 = (ulong)uVar18;
            piVar30 = piVar24;
          }
          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1));
        }
        putc(10,stdout);
        pcVar7 = (char *)dcgettext(0,"Foreign TU table:\n",5);
        printf(pcVar7);
        if ((uint)local_98 != 0) {
          uVar6 = 0;
          piVar30 = piVar29;
          do {
            if (piVar30 + 2 < local_c8) {
              iVar19 = 8;
LAB_00118ee3:
              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);
            }
            else {
              eVar10 = 0;
              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))
              goto LAB_00118ee3;
            }
            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);
            printf(pcVar7,uVar6);
            print_dwarf_vma(eVar10,8);
            putc(10,stdout);
            uVar5 = (int)uVar6 + 1;
            if (uVar5 == (uint)local_98) goto LAB_00118eee;
            uVar6 = (ulong)uVar5;
            piVar30 = piVar30 + 2;
          } while( true );
        }
        goto LAB_00118ef8;
      }
      if ((piVar30 < local_c8) && (iVar20 = iVar19, iVar19 - 1U < 8)) goto LAB_00118af5;
      pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);
      printf(pcVar7,0);
LAB_00118a22:
      pcVar7 = (char *)dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);
      warn(pcVar7);
      iVar19 = 0;
    }
  }
  else {
    iVar19 = 1;
  }
  return iVar19;
LAB_00118eee:
  piVar29 = piVar29 + uVar6 * 2 + 2;
LAB_00118ef8:
  putc(10,stdout);
  puVar17 = (uint *)(local_90 + (long)piVar29);
  lVar4 = local_b0 + local_a8;
  puVar27 = (uchar *)((long)puVar17 + local_b0 + lVar4);
  piVar30 = (int *)(puVar27 + local_c0);
  if (local_c8 < piVar30) {
    puVar27 = section->start;
    pcVar7 = (char *)dcgettext(0,
                               "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"
                               ,5);
    warn(pcVar7,(long)piVar30 - (long)puVar27,(long)local_c8 - (long)puVar27,
         (long)piVar2 - (long)puVar27);
    return 0;
  }
  uVar6 = 0;
  if (local_b8 != 0) {
    uVar6 = 0;
    piVar24 = piVar29 + local_b8;
    do {
      uVar6 = (uVar6 + 1) - (ulong)(*piVar29 == 0);
      piVar29 = piVar29 + 1;
    } while (piVar24 != piVar29);
  }
  uVar8 = 0;
  lVar26 = 0;
  pcVar7 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);
  printf(pcVar7,uVar6,local_b8);
  if (local_d0 != 0) {
    uVar25 = 0;
    lVar26 = 0;
    uVar8 = 0;
    uVar5 = *puVar17;
    puVar23 = puVar17;
    while (puVar23 = puVar23 + 1, puVar17 + local_d0 != puVar23) {
      uVar18 = *puVar23;
      if (uVar5 % local_84 == uVar18 % local_84) {
        uVar25 = uVar25 + 1;
        lVar26 = lVar26 + 1;
        uVar5 = uVar18;
        if (uVar8 < uVar25) {
          uVar8 = uVar25;
        }
      }
      else {
        uVar25 = 0;
        uVar5 = uVar18;
      }
    }
    uVar6 = uVar6 + lVar26;
  }
  pcVar7 = (char *)dcgettext(0,
                             "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"
                             ,5);
  printf(pcVar7,local_d0,lVar26,uVar8);
  if (local_d0 != uVar6) {
                    /* WARNING: Subroutine does not return */
    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,
                  "display_debug_names");
  }
  local_d0 = 0;
  uVar6 = 0;
  __ptr = (dwarf_vma *)0x0;
  while( true ) {
    dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);
    puVar27 = puVar27 + bytes_read;
    if (dVar11 == 0) break;
    if (uVar6 == local_d0) {
      local_d0 = uVar6 * 2;
      if (local_d0 < 0x100) {
        local_d0 = 0x100;
      }
      __ptr = (dwarf_vma *)xrealloc(__ptr,local_d0 << 4);
    }
    if (local_d0 <= uVar6) {
                    /* WARNING: Subroutine does not return */
      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,
                    "display_debug_names");
    }
    pdVar14 = __ptr + uVar6 * 2;
    if (__ptr < pdVar14) {
      dVar13 = *__ptr;
      pdVar12 = __ptr;
      while (dVar11 != dVar13) {
        pdVar12 = pdVar12 + 2;
        if (pdVar14 <= pdVar12) goto LAB_001190c6;
        dVar13 = *pdVar12;
      }
      puVar3 = section->start;
      pcVar7 = (char *)dcgettext(0,
                                 "Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"
                                 ,5);
      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar3);
    }
LAB_001190c6:
    pdVar14[1] = (dwarf_vma)puVar27;
    *pdVar14 = dVar11;
    uVar6 = uVar6 + 1;
    read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);
    puVar27 = puVar27 + bytes_read;
    do {
      puVar23 = &bytes_read;
      dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);
      uVar8 = (ulong)bytes_read;
      dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);
      puVar27 = puVar27 + uVar8 + bytes_read;
    } while (dVar13 != 0 || dVar11 != 0);
  }
  pcVar7 = (char *)dcgettext(0,"\nSymbol table:\n",5);
  printf(pcVar7);
  if ((int)local_a0 != 0) {
    local_90 = 0;
    local_84 = 0;
    uVar5 = (int)local_a0 - 1;
    do {
      uVar8 = (ulong)local_84;
      lVar26 = uVar8 + local_88;
      piVar29 = (int *)((long)puVar17 + uVar8 + local_a8);
      uVar18 = local_88;
      if (((int *)((long)puVar17 + lVar26 + local_a8) < local_c8) ||
         ((eVar10 = 0, piVar29 < local_c8 && (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {
        eVar10 = (*byte_get)((uchar *)piVar29,uVar18);
      }
      piVar29 = (int *)((long)puVar17 + uVar8 + lVar4);
      uVar18 = local_88;
      if (((int *)((long)puVar17 + lVar26 + lVar4) < local_c8) ||
         ((local_98 = piVar30, piVar29 < local_c8 &&
          (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {
        eVar16 = (*byte_get)((uchar *)piVar29,uVar18);
        local_98 = (int *)(eVar16 + (long)piVar30);
      }
      puVar27 = fetch_indirect_string(eVar10);
      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar17[local_90],puVar27);
      uVar18 = 0xfffffffe;
      local_a0 = 0xffffffffffffffff;
      piVar29 = local_98;
      while( true ) {
        while (dVar11 = read_leb128((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8),
              uVar18 == 0xffffffff) {
          piVar29 = local_98;
          local_a0 = dVar11;
          uVar18 = 0;
        }
        if (dVar11 == 0) goto LAB_001193b3;
        uVar8 = (ulong)bytes_read;
        if (-1 < (int)uVar18) {
          if ((uVar18 != 0) || (puVar22 = &DAT_0013d6b7, local_a0 != 0)) {
            puVar22 = &DAT_00142aab;
          }
          printf("%s<%lu>",puVar22,dVar11);
        }
        if (__ptr + uVar6 * 2 <= __ptr) break;
        dVar13 = *__ptr;
        pdVar14 = __ptr;
        while (dVar11 != dVar13) {
          pdVar14 = pdVar14 + 2;
          if (__ptr + uVar6 * 2 <= pdVar14) goto LAB_00119382;
          dVar13 = *pdVar14;
        }
        puVar27 = (uchar *)pdVar14[1];
        dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);
        puVar27 = puVar27 + bytes_read;
        if (-1 < (int)uVar18) {
          pcVar7 = get_TAG_name(dVar11);
          printf(" %s",pcVar7);
        }
        piVar29 = (int *)((long)piVar29 + uVar8);
        while( true ) {
          puVar23 = &bytes_read;
          dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);
          uVar8 = (ulong)bytes_read;
          dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);
          puVar27 = puVar27 + uVar8 + bytes_read;
          if (dVar13 == 0 && dVar11 == 0) break;
          if (-1 < (int)uVar18) {
            puVar15 = get_DW_IDX_name((uint)dVar11);
            if (puVar15 == (char *)0x0) {
              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);
              snprintf(buffer_10768,100,pcVar7,dVar11);
              puVar15 = buffer_10768;
            }
            printf(" %s",puVar15);
          }
          piVar29 = (int *)read_and_display_attr_value
                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,
                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,
                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=');
        }
        uVar18 = uVar18 + 1;
      }
LAB_00119382:
      puVar27 = section->start;
      pcVar7 = (char *)dcgettext(0,
                                 "Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"
                                 ,5);
      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar27);
LAB_001193b3:
      if ((int)uVar18 < 1) {
        pcVar7 = (char *)dcgettext(0," <no entries>",5);
        printf(pcVar7);
      }
      putc(10,stdout);
      local_84 = local_84 + local_88;
      bVar31 = local_90 != uVar5;
      local_90 = local_90 + 1;
    } while (bVar31);
  }
  free(__ptr);
  piVar2 = local_c8;
  goto joined_r0x0011898e;
}



undefined8 FUN_00118940(long param_1,undefined8 param_2)

{
  int *piVar1;
  int *piVar2;
  int iVar3;
  byte bVar4;
  ushort uVar5;
  short sVar6;
  uint uVar7;
  uint uVar8;
  uint uVar9;
  ulong uVar10;
  char *pcVar11;
  undefined8 uVar12;
  undefined8 uVar13;
  undefined8 uVar14;
  long *plVar15;
  long lVar16;
  long *__ptr;
  long *plVar17;
  uint *puVar18;
  uint *puVar19;
  uint uVar20;
  ulong uVar21;
  long lVar22;
  undefined *puVar23;
  int *piVar24;
  ulong uVar25;
  long lVar26;
  long lVar27;
  int *piVar28;
  int *piVar29;
  int *piVar30;
  bool bVar31;
  ulong local_d0;
  int *local_c8;
  ulong local_c0;
  ulong local_b8;
  ulong local_b0;
  long local_a8;
  long local_a0;
  int *local_98;
  ulong local_90;
  uint local_88;
  uint local_84;
  uint local_3c [3];
  
  piVar2 = *(int **)(param_1 + 0x20);
  piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30));
  FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18);
  FUN_0010fed0(10,param_2);
joined_r0x0011898e:
  if (piVar2 < piVar28) {
    piVar29 = piVar2 + 1;
    piVar30 = piVar29;
    if (piVar29 < piVar28) {
      lVar22 = 4;
LAB_00118a58:
      uVar21 = (*DAT_00159e20)(piVar2,lVar22);
      local_88 = 4;
      if (uVar21 == 0xffffffff) {
        piVar30 = piVar2 + 3;
        if (piVar30 < piVar28) {
          lVar22 = 8;
        }
        else if ((piVar28 <= piVar29) ||
                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {
          local_88 = 8;
          goto LAB_001189c5;
        }
        uVar21 = (*DAT_00159e20)(piVar29,lVar22);
        local_88 = 8;
      }
      local_c8 = (int *)((long)piVar30 + uVar21);
      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);
      uVar10 = uVar25 + uVar21;
      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;
LAB_00118a9b:
      uVar13 = FUN_0010ebb0("x",uVar21,0);
      uVar12 = *(undefined8 *)(param_1 + 0x10);
      lVar22 = *(long *)(param_1 + 0x20);
      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);
      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);
      uVar12 = 0;
    }
    else {
      lVar22 = (long)piVar28 - (long)piVar2;
      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;
      local_88 = 4;
LAB_001189c5:
      uVar21 = 0;
      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);
      local_c8 = piVar30;
LAB_001189d9:
      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;
      piVar29 = (int *)((long)piVar30 + 2);
      if (piVar29 < local_c8) {
        uVar10 = 2;
LAB_00118af5:
        uVar5 = (*DAT_00159e20)(piVar30,uVar10);
        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);
        printf(pcVar11,(ulong)uVar5);
        if (uVar5 != 5) goto LAB_00118a22;
        piVar24 = piVar30 + 1;
        if (piVar24 < local_c8) {
          lVar22 = 2;
LAB_00119876:
          sVar6 = (*DAT_00159e20)(piVar29,lVar22);
          if (sVar6 != 0) {
            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);
            warn(uVar12,sVar6);
          }
          if (piVar30 + 2 < local_c8) {
LAB_00118b5e:
            lVar22 = 4;
          }
          else if ((local_c8 <= piVar24) ||
                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))
          goto LAB_00118b74;
          uVar7 = (*DAT_00159e20)(piVar24,lVar22);
          if (uVar7 == 0) goto LAB_00118b74;
        }
        else {
          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))
          goto LAB_00119876;
          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;
LAB_00118b74:
          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);
          warn(uVar12);
          uVar7 = 0;
        }
        piVar24 = piVar30 + 2;
        piVar29 = piVar30 + 3;
        iVar3 = (int)local_c8;
        if (piVar29 < local_c8) {
          lVar22 = 4;
LAB_00119825:
          uVar8 = (*DAT_00159e20)(piVar24,lVar22);
          if (piVar30 + 4 < local_c8) {
LAB_001197d8:
            lVar22 = 4;
          }
          else if ((local_c8 <= piVar29) ||
                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))
          goto LAB_00118bd4;
          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);
          if (piVar30 + 5 < local_c8) goto LAB_001195e0;
          if ((piVar30 + 4 < local_c8) &&
             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))
          goto LAB_001195e5;
LAB_00118beb:
          local_b8 = 0;
          local_84 = 0;
          local_90 = 0;
          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;
LAB_0011975e:
          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);
          local_d0 = (ulong)(uint)local_a0;
          local_b0 = (ulong)((uint)local_a0 * local_88);
          local_a8 = local_d0 << 2;
          if (piVar30 + 7 < local_c8) {
LAB_00119667:
            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);
            if (piVar30 + 8 < local_c8) goto LAB_00119860;
            local_c0 = (ulong)uVar20;
            lVar22 = (long)local_c8 - (long)(piVar30 + 7);
            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;
          }
          else {
            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;
            uVar20 = (*DAT_00159e20)(piVar30 + 6);
            if (local_c8 <= piVar30 + 8) {
              local_c0 = (ulong)uVar20;
              goto LAB_00118c5e;
            }
LAB_00119860:
            local_c0 = (ulong)uVar20;
LAB_00119867:
            lVar22 = 4;
          }
          piVar29 = piVar30 + 8;
          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);
          uVar20 = uVar9;
          if ((uVar9 & 3) != 0) {
            uVar12 = dcgettext(0,
                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"
                               ,5);
            uVar20 = (-uVar9 & 3) + uVar9;
            warn(uVar12,uVar9);
          }
          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);
          printf(pcVar11);
          if (uVar20 != 0) {
            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);
            piVar24 = piVar29;
            do {
              piVar1 = (int *)((long)piVar24 + 1);
              if (piVar1 < local_c8) {
                uVar21 = 1;
LAB_00119753:
                bVar4 = (*DAT_00159e20)(piVar24,uVar21);
                uVar21 = (ulong)bVar4;
              }
              else {
                uVar21 = 0;
                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {
                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;
                  goto LAB_00119753;
                }
              }
              printf(" %02x",uVar21);
              piVar24 = piVar1;
              piVar29 = piVar30;
            } while (piVar1 != piVar30);
          }
        }
        else {
          if ((piVar24 < local_c8) &&
             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;
          uVar8 = 0;
          if (piVar30 + 4 < local_c8) goto LAB_001197d8;
LAB_00118bd4:
          local_98._0_4_ = 0;
          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;
LAB_001195e0:
          lVar22 = 4;
LAB_001195e5:
          piVar29 = piVar30 + 5;
          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);
          local_b8 = (ulong)local_84;
          local_90 = local_b8 << 2;
          if (piVar30 + 6 < local_c8) goto LAB_0011975e;
          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {
LAB_00118c14:
            local_a8 = 0;
            local_d0 = 0;
            local_b0 = 0;
            local_a0._0_4_ = 0;
            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;
            goto LAB_00119667;
          }
          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);
          local_d0 = (ulong)(uint)local_a0;
          local_b0 = (ulong)((uint)local_a0 * local_88);
          local_a8 = local_d0 << 2;
          if (piVar30 + 7 < local_c8) goto LAB_00119667;
LAB_00118c46:
          local_c0 = 0;
          if (piVar30 + 8 < local_c8) goto LAB_00119867;
LAB_00118c5e:
          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);
          printf(pcVar11);
          piVar29 = piVar30 + 8;
        }
        putc(10,stdout);
        putc(10,stdout);
        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);
        printf(pcVar11);
        if (uVar7 != 0) {
          uVar10 = (ulong)local_88;
          uVar21 = 0;
          piVar30 = piVar29;
          do {
            uVar25 = uVar21;
            piVar24 = (int *)((long)piVar30 + uVar10);
            uVar20 = local_88;
            if ((piVar24 < local_c8) ||
               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&
                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {
              uVar12 = (*DAT_00159e20)(piVar30,uVar20);
            }
            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);
            uVar20 = (int)uVar25 + 1;
            printf(pcVar11,uVar25,uVar12);
            uVar21 = (ulong)uVar20;
            piVar30 = piVar24;
          } while (uVar20 != uVar7);
          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));
        }
        putc(10,stdout);
        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);
        printf(pcVar11);
        if (uVar8 != 0) {
          uVar10 = (ulong)local_88;
          uVar21 = 0;
          piVar30 = piVar29;
          while( true ) {
            piVar24 = (int *)((long)piVar30 + uVar10);
            uVar7 = local_88;
            if ((piVar24 < local_c8) ||
               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&
                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {
              uVar12 = (*DAT_00159e20)(piVar30,uVar7);
            }
            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);
            printf(pcVar11,uVar21,uVar12);
            uVar7 = (int)uVar21 + 1;
            if (uVar7 == uVar8) break;
            uVar21 = (ulong)uVar7;
            piVar30 = piVar24;
          }
          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));
        }
        putc(10,stdout);
        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);
        printf(pcVar11);
        if ((uint)local_98 != 0) {
          uVar21 = 0;
          piVar30 = piVar29;
          do {
            if (piVar30 + 2 < local_c8) {
              lVar22 = 8;
LAB_00118ee3:
              uVar12 = (*DAT_00159e20)(piVar30,lVar22);
            }
            else {
              uVar12 = 0;
              if ((piVar30 < local_c8) &&
                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;
            }
            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);
            printf(pcVar11,uVar21);
            FUN_0010ee90(uVar12,8);
            putc(10,stdout);
            uVar7 = (int)uVar21 + 1;
            if (uVar7 == (uint)local_98) goto LAB_00118eee;
            uVar21 = (ulong)uVar7;
            piVar30 = piVar30 + 2;
          } while( true );
        }
        goto LAB_00118ef8;
      }
      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {
        uVar10 = uVar21 & 0xffffffff;
        goto LAB_00118af5;
      }
      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);
      printf(pcVar11,0);
LAB_00118a22:
      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);
      warn(uVar12);
      uVar12 = 0;
    }
  }
  else {
    uVar12 = 1;
  }
  return uVar12;
LAB_00118eee:
  piVar29 = piVar29 + uVar21 * 2 + 2;
LAB_00118ef8:
  putc(10,stdout);
  puVar18 = (uint *)(local_90 + (long)piVar29);
  lVar22 = local_b0 + local_a8;
  lVar27 = (long)puVar18 + local_b0 + lVar22;
  piVar30 = (int *)(local_c0 + lVar27);
  if (local_c8 < piVar30) {
    lVar22 = *(long *)(param_1 + 0x20);
    uVar12 = dcgettext(0,
                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"
                       ,5);
    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);
    return 0;
  }
  uVar21 = 0;
  if (local_b8 != 0) {
    uVar21 = 0;
    piVar24 = piVar29 + local_b8;
    do {
      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);
      piVar29 = piVar29 + 1;
    } while (piVar24 != piVar29);
  }
  uVar10 = 0;
  lVar26 = 0;
  pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);
  printf(pcVar11,uVar21,local_b8);
  if (local_d0 != 0) {
    uVar25 = 0;
    lVar26 = 0;
    uVar10 = 0;
    uVar7 = *puVar18;
    puVar19 = puVar18;
    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {
      uVar8 = *puVar19;
      if (uVar7 % local_84 == uVar8 % local_84) {
        uVar25 = uVar25 + 1;
        lVar26 = lVar26 + 1;
        uVar7 = uVar8;
        if (uVar10 < uVar25) {
          uVar10 = uVar25;
        }
      }
      else {
        uVar25 = 0;
        uVar7 = uVar8;
      }
    }
    uVar21 = uVar21 + lVar26;
  }
  pcVar11 = (char *)dcgettext(0,
                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"
                              ,5);
  printf(pcVar11,local_d0,lVar26,uVar10);
  if (local_d0 != uVar21) {
                    /* WARNING: Subroutine does not return */
    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,
                  "display_debug_names");
  }
  local_d0 = 0;
  uVar21 = 0;
  __ptr = (long *)0x0;
  while( true ) {
    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);
    lVar27 = lVar27 + (ulong)local_3c[0];
    if (lVar26 == 0) break;
    if (uVar21 == local_d0) {
      local_d0 = uVar21 * 2;
      if (local_d0 < 0x100) {
        local_d0 = 0x100;
      }
      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);
    }
    if (local_d0 <= uVar21) {
                    /* WARNING: Subroutine does not return */
      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,
                    "display_debug_names");
    }
    plVar17 = __ptr + uVar21 * 2;
    if (__ptr < plVar17) {
      lVar16 = *__ptr;
      plVar15 = __ptr;
      while (lVar26 != lVar16) {
        plVar15 = plVar15 + 2;
        if (plVar17 <= plVar15) goto LAB_001190c6;
        lVar16 = *plVar15;
      }
      lVar16 = *(long *)(param_1 + 0x20);
      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);
      warn(uVar12,lVar26,(long)piVar2 - lVar16);
    }
LAB_001190c6:
    plVar17[1] = lVar27;
    *plVar17 = lVar26;
    uVar21 = uVar21 + 1;
    FUN_001114f0(lVar27,local_3c,0,piVar30);
    lVar27 = lVar27 + (ulong)local_3c[0];
    do {
      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);
      uVar10 = (ulong)local_3c[0];
      lVar16 = FUN_001114f0(lVar27 + uVar10);
      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];
    } while (lVar16 != 0 || lVar26 != 0);
  }
  pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5);
  printf(pcVar11);
  if ((uint)local_a0 != 0) {
    local_90 = 0;
    local_84 = 0;
    uVar7 = (uint)local_a0 - 1;
    do {
      uVar10 = (ulong)local_84;
      lVar27 = uVar10 + local_88;
      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);
      uVar8 = local_88;
      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||
         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {
        uVar12 = (*DAT_00159e20)(piVar29,uVar8);
      }
      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);
      uVar8 = local_88;
      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||
         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))
         ) {
        lVar27 = (*DAT_00159e20)(piVar29,uVar8);
        local_98 = (int *)(lVar27 + (long)piVar30);
      }
      uVar12 = FUN_00110250(uVar12);
      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);
      uVar8 = 0xfffffffe;
      local_a0 = -1;
      piVar29 = local_98;
      while( true ) {
        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {
          piVar29 = local_98;
          local_a0 = lVar27;
          uVar8 = 0;
        }
        if (lVar27 == 0) goto LAB_001193b3;
        uVar10 = (ulong)local_3c[0];
        if (-1 < (int)uVar8) {
          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {
            puVar23 = &DAT_00142aab;
          }
          printf("%s<%lu>",puVar23,lVar27);
        }
        if (__ptr + uVar21 * 2 <= __ptr) break;
        lVar26 = *__ptr;
        plVar17 = __ptr;
        while (lVar27 != lVar26) {
          plVar17 = plVar17 + 2;
          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;
          lVar26 = *plVar17;
        }
        lVar27 = plVar17[1];
        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);
        lVar27 = lVar27 + (ulong)local_3c[0];
        if (-1 < (int)uVar8) {
          uVar12 = FUN_001103f0(uVar12);
          printf(" %s",uVar12);
        }
        piVar29 = (int *)((long)piVar29 + uVar10);
        while( true ) {
          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);
          uVar25 = (ulong)local_3c[0];
          lVar26 = FUN_001114f0(lVar27 + uVar25);
          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];
          if (lVar26 == 0 && uVar10 == 0) break;
          if (-1 < (int)uVar8) {
            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);
            if (puVar23 == (undefined *)0x0) {
              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);
              snprintf(&DAT_001574a0,100,pcVar11,uVar10);
              puVar23 = &DAT_001574a0;
            }
            printf(" %s",puVar23);
          }
          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,
                                        uVar8 >> 0x1f,0,0,0x3d);
        }
        uVar8 = uVar8 + 1;
      }
LAB_00119382:
      lVar26 = *(long *)(param_1 + 0x20);
      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);
      warn(uVar12,lVar27,(long)piVar2 - lVar26);
LAB_001193b3:
      if ((int)uVar8 < 1) {
        pcVar11 = (char *)dcgettext(0," <no entries>",5);
        printf(pcVar11);
      }
      putc(10,stdout);
      local_84 = local_84 + local_88;
      bVar31 = local_90 != uVar7;
      local_90 = local_90 + 1;
    } while (bVar31);
  }
  free(__ptr);
  piVar2 = local_c8;
  goto joined_r0x0011898e;
}


PUSH R15
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
MOV RBX,RSI
LEA RSI,[RDI + 0x18]
SUB RSP,0xa8
MOV R14,qword ptr [RDI + 0x20]
MOV qword ptr [RSP + 0x60],RDI
MOV R15,R14
MOV qword ptr [RSP + 0x58],R14
ADD R14,qword ptr [RDI + 0x30]
MOV RDI,qword ptr [RDI + 0x10]
MOV qword ptr [RSP + 0x88],R14
CALL 0x00110740
MOV RSI,RBX
MOV EDI,0xa
CALL 0x0010fed0
CMP R15,R14
JNC 0x001195cc
MOV RAX,qword ptr [RSP + 0x58]
MOV RSI,qword ptr [RSP + 0x88]
LEA RBP,[RAX + 0x4]
CMP RBP,RSI
JC 0x00118a53
SUB RSI,RAX
LEA EAX,[RSI + -0x1]
CMP EAX,0x7
JBE 0x00118a58
MOV dword ptr [RSP + 0x50],0x4
MOV RCX,qword ptr [RSP + 0x60]
MOV qword ptr [RSP + 0x10],RBP
MOV RAX,RBP
XOR R12D,R12D
SUB RAX,qword ptr [RCX + 0x20]
MOV RCX,qword ptr [RSP + 0x60]
CMP qword ptr [RCX + 0x30],RAX
JC 0x00118a9b
MOV RAX,qword ptr [RSP + 0x10]
LEA R14,[RBP + 0x2]
CMP R14,RAX
JC 0x00118af0
CMP RBP,RAX
JC 0x001198bd
LEA RSI,[0x141ac1]
XOR EDI,EDI
MOV EDX,0x5
CALL 0x00107230
XOR ESI,ESI
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107290
MOV EDX,0x5
LEA RSI,[0x13f478]
XOR EDI,EDI
CALL 0x00107230
MOV RDI,RAX
XOR EAX,EAX
CALL 0x001379e0
XOR EAX,EAX
ADD RSP,0xa8
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
MOV ESI,0x4
MOV RDI,qword ptr [RSP + 0x58]
CALL qword ptr [0x00159e20]
MOV dword ptr [RSP + 0x50],0x4
MOV R12,RAX
MOV EAX,0xffffffff
CMP R12,RAX
JZ 0x001198d8
MOV RCX,qword ptr [RSP + 0x60]
LEA RAX,[RBP + R12*0x1]
MOV qword ptr [RSP + 0x10],RAX
MOV RAX,RBP
SUB RAX,qword ptr [RCX + 0x20]
ADD RAX,R12
JNC 0x001189d9
MOV RSI,R12
XOR EDX,EDX
LEA RDI,[0x13d841]
CALL 0x0010ebb0
MOV EDX,0x5
XOR EDI,EDI
LEA RSI,[0x13f150]
MOV R12,RAX
MOV RAX,qword ptr [RSP + 0x60]
MOV RBP,qword ptr [RSP + 0x58]
MOV RBX,qword ptr [RAX + 0x10]
SUB RBP,qword ptr [RAX + 0x20]
CALL 0x00107230
MOV RCX,R12
MOV RDX,RBP
MOV RDI,RAX
MOV RSI,RBX
XOR EAX,EAX
CALL 0x001379e0
XOR EAX,EAX
JMP 0x00118a41
MOV ESI,0x2
MOV RDI,RBP
CALL qword ptr [0x00159e20]
XOR EDI,EDI
MOV EDX,0x5
LEA RSI,[0x141ac1]
MOV RBX,RAX
CALL 0x00107230
MOVZX ESI,BX
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107290
CMP BX,0x5
JNZ 0x00118a22
MOV RAX,qword ptr [RSP + 0x10]
LEA R13,[RBP + 0x4]
CMP R13,RAX
JC 0x00119871
CMP R14,RAX
JNC 0x00118b53
LEA RSI,[R12 + -0x2]
LEA EAX,[RSI + -0x1]
CMP EAX,0x7
JBE 0x00119876
LEA RBX,[RBP + 0x8]
CMP RBX,qword ptr [RSP + 0x10]
JNC 0x00118b74
MOV ESI,0x4
MOV RDI,R13
CALL qword ptr [0x00159e20]
MOV dword ptr [RSP + 0x68],EAX
TEST EAX,EAX
JNZ 0x00118b99
MOV EDX,0x5
LEA RSI,[0x13f4f0]
XOR EDI,EDI
CALL 0x00107230
MOV RDI,RAX
XOR EAX,EAX
CALL 0x001379e0
MOV dword ptr [RSP + 0x68],0x0
MOV RAX,qword ptr [RSP + 0x10]
LEA R13,[RBP + 0xc]
CMP R13,RAX
JC 0x00119820
CMP RBX,RAX
JNC 0x00118bc2
SUB RAX,RBX
MOV RSI,RAX
LEA EAX,[RAX + -0x1]
CMP EAX,0x7
JBE 0x00119825
LEA R12,[RBP + 0x10]
XOR R15D,R15D
CMP qword ptr [RSP + 0x10],R12
JA 0x001197d8
LEA RBX,[RBP + 0x14]
CMP qword ptr [RSP + 0x10],RBX
MOV dword ptr [RSP + 0x40],0x0
JA 0x001195e0
LEA R12,[RBP + 0x18]
CMP qword ptr [RSP + 0x10],R12
MOV qword ptr [RSP + 0x20],0x0
MOV dword ptr [RSP + 0x54],0x0
MOV qword ptr [RSP + 0x48],0x0
JA 0x0011975e
LEA RBX,[RBP + 0x1c]
CMP RBX,qword ptr [RSP + 0x10]
MOV qword ptr [RSP + 0x30],0x0
MOV qword ptr [RSP + 0x8],0x0
MOV qword ptr [RSP + 0x28],0x0
MOV dword ptr [RSP + 0x38],0x0
JC 0x00119667
MOV qword ptr [RSP + 0x18],0x0
ADD RBP,0x20
CMP RBP,qword ptr [RSP + 0x10]
JC 0x00119867
MOV EDX,0x5
LEA RSI,[0x142aae]
XOR EDI,EDI
MOV R14,RBP
CALL 0x00107230
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107290
MOV RSI,qword ptr [0x00156da0]
MOV EDI,0xa
CALL 0x00107460
MOV RSI,qword ptr [0x00156da0]
MOV EDI,0xa
CALL 0x00107460
MOV EDX,0x5
LEA RSI,[0x141ae9]
XOR EDI,EDI
CALL 0x00107230
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107290
MOV EAX,dword ptr [RSP + 0x68]
TEST EAX,EAX
JZ 0x00118d61
MOV dword ptr [RSP + 0x68],R15D
MOV R12D,dword ptr [RSP + 0x50]
MOV RDI,R14
XOR EBX,EBX
MOV R13,qword ptr [RSP + 0x10]
MOV R15D,EAX
MOV qword ptr [RSP + 0x70],R14
JMP 0x00118d31
MOV RAX,R14
XOR EBP,EBP
SUB RAX,R12
CMP R13,RAX
JBE 0x00118d04
MOV RAX,R13
SUB RAX,RDI
MOV ESI,EAX
SUB EAX,0x1
CMP EAX,0x7
JBE 0x00118d3e
MOV EDX,0x5
LEA RSI,[0x142ac3]
XOR EDI,EDI
CALL 0x00107230
MOV ESI,EBX
MOV RDX,RBP
ADD EBX,0x1
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107290
MOV RDI,R14
CMP EBX,R15D
JZ 0x00118d49
LEA R14,[RDI + R12*0x1]
CMP R14,R13
JNC 0x00118ce7
MOV ESI,dword ptr [RSP + 0x50]
CALL qword ptr [0x00159e20]
MOV RBP,RAX
JMP 0x00118d04
LEA EAX,[RBX + -0x1]
MOV R14,qword ptr [RSP + 0x70]
MOV R15D,dword ptr [RSP + 0x68]
ADD RAX,0x1
IMUL R12,RAX
ADD R14,R12
MOV RSI,qword ptr [0x00156da0]
MOV EDI,0xa
CALL 0x00107460
XOR EDI,EDI
MOV EDX,0x5
LEA RSI,[0x141af5]
CALL 0x00107230
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107290
TEST R15D,R15D
JZ 0x00118e24
MOV R12D,dword ptr [RSP + 0x50]
MOV RDI,R14
XOR EBX,EBX
MOV R13,qword ptr [RSP + 0x10]
MOV qword ptr [RSP + 0x68],R14
JMP 0x00118dfa
MOV RAX,R14
XOR EBP,EBP
SUB RAX,R12
CMP R13,RAX
JBE 0x00118dcb
MOV RAX,R13
SUB RAX,RDI
MOV ESI,EAX
SUB EAX,0x1
CMP EAX,0x7
JBE 0x00118e07
MOV EDX,0x5
LEA RSI,[0x142ac3]
XOR EDI,EDI
CALL 0x00107230
MOV RDX,RBP
MOV ESI,EBX
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107290
LEA EAX,[RBX + 0x1]
MOV RDI,R14
CMP EAX,R15D
JZ 0x00118e12
MOV EBX,EAX
LEA R14,[RDI + R12*0x1]
CMP R14,R13
JNC 0x00118dae
MOV ESI,dword ptr [RSP + 0x50]
CALL qword ptr [0x00159e20]
MOV RBP,RAX
JMP 0x00118dcb
MOV EAX,EBX
MOV R14,qword ptr [RSP + 0x68]
ADD RAX,0x1
IMUL R12,RAX
ADD R14,R12
MOV RSI,qword ptr [0x00156da0]
MOV EDI,0xa
CALL 0x00107460
MOV EDX,0x5
LEA RSI,[0x142ad0]
XOR EDI,EDI
CALL 0x00107230
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107290
MOV EAX,dword ptr [RSP + 0x40]
TEST EAX,EAX
JZ 0x00118ef8
MOV RDI,R14
MOV qword ptr [RSP + 0x40],R14
XOR EBX,EBX
MOV R13,qword ptr [RSP + 0x10]
LEA R15,[0x142ae3]
MOV R14D,EAX
JMP 0x00118ed5
XOR R12D,R12D
CMP R13,RDI
JBE 0x00118e8f
MOV RSI,R13
SUB RSI,RDI
LEA EAX,[RSI + -0x1]
CMP EAX,0x7
JBE 0x00118ee3
MOV EDX,0x5
MOV RSI,R15
XOR EDI,EDI
CALL 0x00107230
MOV ESI,EBX
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107290
MOV ESI,0x8
MOV RDI,R12
CALL 0x0010ee90
MOV RSI,qword ptr [0x00156da0]
MOV EDI,0xa
CALL 0x00107460
LEA EAX,[RBX + 0x1]
MOV RDI,RBP
CMP EAX,R14D
JZ 0x00118eee
MOV EBX,EAX
LEA RBP,[RDI + 0x8]
CMP RBP,R13
JNC 0x00118e79
MOV ESI,0x8
CALL qword ptr [0x00159e20]
MOV R12,RAX
JMP 0x00118e8f
MOV R14,qword ptr [RSP + 0x40]
LEA R14,[R14 + RBX*0x8 + 0x8]
MOV RSI,qword ptr [0x00156da0]
MOV EDI,0xa
CALL 0x00107460
MOV RCX,qword ptr [RSP + 0x48]
MOV RAX,qword ptr [RSP + 0x30]
MOV R13,qword ptr [RSP + 0x28]
MOV R15,qword ptr [RSP + 0x18]
ADD RCX,R14
ADD RAX,RCX
MOV qword ptr [RSP + 0x68],RCX
MOV qword ptr [RSP + 0x78],RAX
ADD RAX,R13
ADD R13,RAX
MOV qword ptr [RSP + 0x80],RAX
ADD R15,R13
CMP R15,qword ptr [RSP + 0x10]
JA 0x00119976
XOR EBX,EBX
CMP qword ptr [RSP + 0x20],0x0
JZ 0x00118f71
MOV RAX,qword ptr [RSP + 0x20]
XOR EBX,EBX
LEA RAX,[R14 + RAX*0x4]
NOP
CMP dword ptr [R14],0x1
SBB RBX,-0x1
ADD R14,0x4
CMP RAX,R14
JNZ 0x00118f60
MOV R14,qword ptr [RSP + 0x20]
XOR EDI,EDI
MOV R8D,0x5
XOR EBP,EBP
LEA RDX,[0x142aea]
LEA RSI,[0x142b04]
XOR R12D,R12D
MOV RCX,R14
CALL 0x001076c0
MOV RDX,R14
MOV RSI,RBX
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107290
CMP qword ptr [RSP + 0x8],0x0
JZ 0x00119009
MOV RSI,qword ptr [RSP + 0x68]
MOV RDI,qword ptr [RSP + 0x8]
XOR R8D,R8D
XOR EBP,EBP
XOR R12D,R12D
MOV EAX,dword ptr [RSI]
LEA RCX,[RSI + 0x4]
LEA R9,[RSI + RDI*0x4]
MOV ESI,dword ptr [RSP + 0x54]
JMP 0x00118fdc
XOR R8D,R8D
ADD RCX,0x4
MOV EAX,EDI
CMP R9,RCX
JZ 0x00119006
XOR EDX,EDX
MOV EDI,dword ptr [RCX]
DIV ESI
MOV EAX,EDI
MOV R10D,EDX
XOR EDX,EDX
DIV ESI
CMP R10D,EDX
JNZ 0x00118fd3
ADD R8,0x1
ADD R12,0x1
CMP RBP,R8
CMOVC RBP,R8
JMP 0x00118fd6
ADD RBX,R12
XOR EDI,EDI
MOV EDX,0x5
LEA RSI,[0x13f5d8]
CALL 0x00107230
MOV R14,qword ptr [RSP + 0x8]
MOV RCX,RBP
MOV RDX,R12
MOV RDI,RAX
XOR EAX,EAX
MOV RSI,R14
CALL 0x00107290
CMP R14,RBX
JNZ 0x001199b9
MOV qword ptr [RSP + 0x8],0x0
XOR EBP,EBP
XOR R14D,R14D
LEA R12,[RSP + 0x9c]
NOP dword ptr [RAX + RAX*0x1]
MOV RDI,R13
MOV RCX,R15
XOR EDX,EDX
MOV RSI,R12
CALL 0x001114f0
MOV R9,RAX
MOV EAX,dword ptr [RSP + 0x9c]
ADD R13,RAX
TEST R9,R9
JZ 0x001191bb
CMP RBP,qword ptr [RSP + 0x8]
JZ 0x00119181
CMP RBP,qword ptr [RSP + 0x8]
JNC 0x00119957
MOV RCX,RBP
SHL RCX,0x4
LEA RBX,[R14 + RCX*0x1]
CMP R14,RBX
JNC 0x001190c6
CMP R9,qword ptr [R14]
JZ 0x00119130
MOV RAX,R14
JMP 0x001190bd
CMP qword ptr [RAX],R9
JZ 0x00119130
ADD RAX,0x10
CMP RAX,RBX
JC 0x001190b8
MOV qword ptr [RBX + 0x8],R13
MOV RDI,R13
MOV RCX,R15
XOR EDX,EDX
MOV qword ptr [RBX],R9
MOV RSI,R12
ADD RBP,0x1
CALL 0x001114f0
MOV EAX,dword ptr [RSP + 0x9c]
ADD R13,RAX
NOP dword ptr [RAX + RAX*0x1]
XOR EDX,EDX
MOV RDI,R13
MOV RCX,R15
MOV RSI,R12
CALL 0x001114f0
XOR EDX,EDX
MOV RCX,R15
MOV RBX,RAX
MOV EAX,dword ptr [RSP + 0x9c]
ADD R13,RAX
MOV RDI,R13
CALL 0x001114f0
MOV EDX,dword ptr [RSP + 0x9c]
ADD R13,RDX
OR RAX,RBX
JNZ 0x001190f0
JMP 0x00119058
MOV RCX,qword ptr [RSP + 0x60]
MOV RAX,qword ptr [RSP + 0x58]
MOV EDX,0x5
XOR EDI,EDI
LEA RSI,[0x13f688]
MOV qword ptr [RSP + 0x20],R9
SUB RAX,qword ptr [RCX + 0x20]
MOV qword ptr [RSP + 0x18],RAX
CALL 0x00107230
MOV R9,qword ptr [RSP + 0x20]
MOV RDX,qword ptr [RSP + 0x18]
MOV RDI,RAX
XOR EAX,EAX
MOV RSI,R9
MOV qword ptr [RSP + 0x18],R9
CALL 0x001379e0
MOV R9,qword ptr [RSP + 0x18]
JMP 0x001190c6
LEA RAX,[RBP + RBP*0x1]
MOV ECX,0x100
MOV RDI,R14
MOV qword ptr [RSP + 0x18],R9
CMP RAX,0x100
CMOVC RAX,RCX
MOV RSI,RAX
MOV qword ptr [RSP + 0x8],RAX
SHL RSI,0x4
CALL 0x001072b0
MOV R9,qword ptr [RSP + 0x18]
MOV R14,RAX
JMP 0x00119089
MOV EDX,0x5
LEA RSI,[0x141b39]
XOR EDI,EDI
MOV qword ptr [RSP + 0x28],R14
CALL 0x00107230
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107290
MOV R8D,dword ptr [RSP + 0x38]
TEST R8D,R8D
JZ 0x001195aa
MOV EAX,dword ptr [RSP + 0x50]
SHL RBP,0x4
ADD RBP,qword ptr [RSP + 0x28]
MOV qword ptr [RSP + 0x48],0x0
MOV qword ptr [RSP + 0x30],RBP
MOV R14,R15
MOV qword ptr [RSP + 0x20],RAX
MOV EAX,dword ptr [RSP + 0x38]
MOV dword ptr [RSP + 0x54],0x0
SUB EAX,0x1
MOV qword ptr [RSP + 0x70],RAX
NOP word ptr [RAX + RAX*0x1]
MOV EBP,dword ptr [RSP + 0x54]
MOV RAX,qword ptr [RSP + 0x20]
MOV RCX,qword ptr [RSP + 0x10]
MOV EBX,dword ptr [RSP + 0x48]
LEA R13,[RBP + RAX*0x1]
MOV RAX,qword ptr [RSP + 0x78]
LEA RDI,[RAX + RBP*0x1]
ADD RAX,R13
CMP RCX,RAX
JA 0x00119576
XOR R15D,R15D
CMP RDI,RCX
JNC 0x00119270
MOV RAX,RCX
SUB RAX,RDI
MOV ESI,EAX
SUB EAX,0x1
CMP EAX,0x7
JBE 0x0011957a
MOV RAX,qword ptr [RSP + 0x80]
LEA RDI,[RAX + RBP*0x1]
ADD R13,RAX
MOV RAX,qword ptr [RSP + 0x10]
CMP RAX,R13
JA 0x0011955f
MOV qword ptr [RSP + 0x40],R14
CMP RDI,RAX
JNC 0x001192ad
SUB RAX,RDI
MOV ESI,EAX
SUB EAX,0x1
CMP EAX,0x7
JBE 0x00119563
MOV qword ptr [RSP + 0x40],R14
MOV RDI,R15
CALL 0x00110250
MOV RCX,qword ptr [RSP + 0x68]
MOV RSI,qword ptr [RSP + 0x48]
LEA RDI,[0x142b1d]
MOV EDX,dword ptr [RCX + RSI*0x4]
MOV RCX,RAX
MOV ESI,EBX
XOR EAX,EAX
CALL 0x00107290
MOV dword ptr [RSP + 0x8],0xfffffffe
MOV R13,qword ptr [RSP + 0x40]
MOV qword ptr [RSP + 0x38],-0x1
NOP dword ptr [RAX + RAX*0x1]
MOV RCX,qword ptr [RSP + 0x10]
XOR EDX,EDX
MOV RSI,R12
MOV RDI,R13
CALL 0x001114f0
CMP dword ptr [RSP + 0x8],-0x1
MOV R15,RAX
JZ 0x00119548
TEST RAX,RAX
JZ 0x001193b3
MOV EDI,dword ptr [RSP + 0x8]
MOV EBP,dword ptr [RSP + 0x9c]
TEST EDI,EDI
JS 0x00119352
JNZ 0x00119538
CMP qword ptr [RSP + 0x38],0x0
LEA RSI,[0x13d6b7]
JNZ 0x00119538
MOV RDX,R15
LEA RDI,[0x142b2d]
XOR EAX,EAX
CALL 0x00107290
MOV RAX,qword ptr [RSP + 0x28]
MOV RDX,qword ptr [RSP + 0x30]
CMP RAX,RDX
JNC 0x00119382
CMP R15,qword ptr [RAX]
JNZ 0x00119379
JMP 0x001193f6
CMP qword ptr [RAX],R15
JZ 0x00119400
ADD RAX,0x10
CMP RAX,RDX
JC 0x00119370
MOV RAX,qword ptr [RSP + 0x60]
MOV EDX,0x5
LEA RSI,[0x13f6d0]
XOR EDI,EDI
MOV RBX,qword ptr [RSP + 0x58]
SUB RBX,qword ptr [RAX + 0x20]
CALL 0x00107230
MOV RDX,RBX
MOV RSI,R15
MOV RDI,RAX
XOR EAX,EAX
CALL 0x001379e0
MOV ECX,dword ptr [RSP + 0x8]
TEST ECX,ECX
JLE 0x00119588
MOV RSI,qword ptr [0x00156da0]
MOV EDI,0xa
CALL 0x00107460
MOV RCX,qword ptr [RSP + 0x48]
MOV EDI,dword ptr [RSP + 0x50]
ADD dword ptr [RSP + 0x54],EDI
LEA RAX,[RCX + 0x1]
CMP RCX,qword ptr [RSP + 0x70]
JZ 0x001195aa
MOV qword ptr [RSP + 0x48],RAX
JMP 0x00119228
MOV RAX,qword ptr [RSP + 0x28]
NOP dword ptr [RAX + RAX*0x1]
MOV RBX,qword ptr [RAX + 0x8]
XOR EDX,EDX
MOV RCX,R14
MOV RSI,R12
MOV RDI,RBX
CALL 0x001114f0
MOV EDX,dword ptr [RSP + 0x9c]
ADD RBX,RDX
MOV EDX,dword ptr [RSP + 0x8]
TEST EDX,EDX
JS 0x0011943f
MOV RDI,RAX
CALL 0x001103f0
LEA RDI,[0x141fbc]
MOV RSI,RAX
XOR EAX,EAX
CALL 0x00107290
MOV EAX,dword ptr [RSP + 0x8]
ADD R13,RBP
SHR EAX,0x1f
MOV dword ptr [RSP + 0x18],EAX
JMP 0x00119483
PUSH 0x3d
MOV RCX,R13
XOR R9D,R9D
XOR EDX,EDX
PUSH 0x0
MOV RSI,R15
XOR EDI,EDI
PUSH 0x0
MOV EAX,dword ptr [RSP + 0x30]
PUSH RAX
PUSH 0x0
PUSH 0x5
PUSH qword ptr [RSP + 0x50]
PUSH 0x0
MOV R8,qword ptr [RSP + 0x50]
CALL 0x00114210
ADD RSP,0x40
MOV R13,RAX
XOR EDX,EDX
MOV RDI,RBX
MOV RCX,R14
MOV RSI,R12
CALL 0x001114f0
XOR EDX,EDX
MOV RCX,R14
MOV RBP,RAX
MOV EAX,dword ptr [RSP + 0x9c]
ADD RBX,RAX
MOV RDI,RBX
CALL 0x001114f0
MOV R15,RAX
MOV EAX,dword ptr [RSP + 0x9c]
ADD RBX,RAX
MOV RAX,R15
OR RAX,RBP
JZ 0x001194f0
MOV ESI,dword ptr [RSP + 0x8]
TEST ESI,ESI
JS 0x00119450
MOV EDI,EBP
CALL 0x0013b9f0
TEST RAX,RAX
JZ 0x00119500
MOV RSI,RAX
LEA RDI,[0x141fbc]
XOR EAX,EAX
CALL 0x00107290
JMP 0x00119450
ADD dword ptr [RSP + 0x8],0x1
JMP 0x001192f0
MOV EDX,0x5
LEA RSI,[0x142b35]
XOR EDI,EDI
CALL 0x00107230
MOV RCX,RBP
MOV ESI,0x64
LEA RDI,[0x1574a0]
MOV RDX,RAX
XOR EAX,EAX
CALL 0x001072a0
LEA RAX,[0x1574a0]
JMP 0x001194d6
LEA RSI,[0x142aab]
JMP 0x00119341
MOV qword ptr [RSP + 0x38],RAX
MOV R13,qword ptr [RSP + 0x40]
MOV dword ptr [RSP + 0x8],0x0
JMP 0x001192f0
MOV ESI,dword ptr [RSP + 0x50]
CALL qword ptr [0x00159e20]
ADD RAX,R14
MOV qword ptr [RSP + 0x40],RAX
JMP 0x001192ad
MOV ESI,dword ptr [RSP + 0x50]
CALL qword ptr [0x00159e20]
MOV R15,RAX
JMP 0x00119270
XOR EDI,EDI
MOV EDX,0x5
LEA RSI,[0x142b4c]
CALL 0x00107230
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107290
JMP 0x001193bf
MOV RDI,qword ptr [RSP + 0x28]
CALL 0x00107070
MOV RAX,qword ptr [RSP + 0x10]
MOV qword ptr [RSP + 0x58],RAX
CMP qword ptr [RSP + 0x88],RAX
JA 0x00118994
MOV EAX,0x1
JMP 0x00118a41
MOV ESI,0x4
MOV RDI,R12
LEA R12,[RBP + 0x18]
CALL qword ptr [0x00159e20]
MOV dword ptr [RSP + 0x54],EAX
MOV EAX,EAX
MOV qword ptr [RSP + 0x20],RAX
SHL RAX,0x2
MOV qword ptr [RSP + 0x48],RAX
CMP R12,qword ptr [RSP + 0x10]
JC 0x0011975e
MOV RAX,qword ptr [RSP + 0x10]
CMP RAX,RBX
JBE 0x00118c14
SUB RAX,RBX
MOV RSI,RAX
LEA EAX,[RAX + -0x1]
CMP EAX,0x7
JA 0x00118c14
MOV RDI,RBX
LEA RBX,[RBP + 0x1c]
CALL qword ptr [0x00159e20]
MOV ECX,EAX
MOV dword ptr [RSP + 0x38],EAX
IMUL EAX,dword ptr [RSP + 0x50]
MOV qword ptr [RSP + 0x8],RCX
SHL RCX,0x2
MOV qword ptr [RSP + 0x30],RCX
MOV qword ptr [RSP + 0x28],RAX
CMP qword ptr [RSP + 0x10],RBX
JBE 0x00118c46
MOV ESI,0x4
MOV RDI,R12
ADD RBP,0x20
CALL qword ptr [0x00159e20]
MOV EDX,EAX
CMP RBP,qword ptr [RSP + 0x10]
JC 0x00119860
MOV RSI,qword ptr [RSP + 0x10]
MOV EAX,EAX
MOV qword ptr [RSP + 0x18],RAX
SUB RSI,RBX
LEA EAX,[RSI + -0x1]
CMP EAX,0x7
JA 0x00118c5e
MOV RDI,RBX
CALL qword ptr [0x00159e20]
MOV R12,RAX
MOV EBX,EAX
TEST AL,0x3
JZ 0x001196db
MOV EDX,0x5
LEA RSI,[0x13f528]
XOR EDI,EDI
NEG EBX
CALL 0x00107230
AND EBX,0x3
MOV ESI,R12D
MOV RDI,RAX
XOR EAX,EAX
ADD EBX,R12D
CALL 0x001379e0
XOR EDI,EDI
MOV EDX,0x5
LEA RSI,[0x142aae]
CALL 0x00107230
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107290
TEST EBX,EBX
JZ 0x001199e0
LEA EAX,[RBX + -0x1]
MOV RDI,RBP
LEA R14,[RBP + RAX*0x1 + 0x1]
MOV RBP,qword ptr [RSP + 0x10]
JMP 0x00119745
XOR ESI,ESI
CMP RBP,RDI
JBE 0x0011972b
MOV RAX,RBP
SUB RAX,RDI
LEA EDX,[RAX + -0x1]
CMP EDX,0x7
JBE 0x001199d8
LEA RDI,[0x141943]
XOR EAX,EAX
CALL 0x00107290
MOV RDI,RBX
CMP RBX,R14
JZ 0x00118c7e
LEA RBX,[RDI + 0x1]
CMP RBX,RBP
JNC 0x00119712
MOV ESI,0x1
CALL qword ptr [0x00159e20]
MOVZX ESI,AL
JMP 0x0011972b
MOV RDI,RBX
MOV ESI,0x4
LEA RBX,[RBP + 0x1c]
CALL qword ptr [0x00159e20]
MOV ECX,EAX
MOV dword ptr [RSP + 0x38],EAX
IMUL EAX,dword ptr [RSP + 0x50]
MOV qword ptr [RSP + 0x8],RCX
SHL RCX,0x2
MOV qword ptr [RSP + 0x30],RCX
MOV qword ptr [RSP + 0x28],RAX
CMP qword ptr [RSP + 0x10],RBX
JA 0x00119667
MOV RSI,qword ptr [RSP + 0x10]
SUB RSI,R12
LEA EAX,[RSI + -0x1]
CMP EAX,0x7
JA 0x00118c46
MOV RDI,R12
ADD RBP,0x20
CALL qword ptr [0x00159e20]
MOV EDX,EAX
CMP RBP,qword ptr [RSP + 0x10]
JC 0x00119860
MOV EAX,EAX
MOV qword ptr [RSP + 0x18],RAX
JMP 0x00118c5e
MOV ESI,0x4
MOV RDI,R13
LEA RBX,[RBP + 0x14]
CALL qword ptr [0x00159e20]
MOV dword ptr [RSP + 0x40],EAX
CMP RBX,qword ptr [RSP + 0x10]
JC 0x001195e0
CMP qword ptr [RSP + 0x10],R12
JBE 0x00118beb
MOV RSI,qword ptr [RSP + 0x10]
SUB RSI,R12
LEA EAX,[RSI + -0x1]
CMP EAX,0x7
JA 0x00118beb
JMP 0x001195e5
MOV ESI,0x4
MOV RDI,RBX
LEA R12,[RBP + 0x10]
CALL qword ptr [0x00159e20]
MOV R15D,EAX
CMP R12,qword ptr [RSP + 0x10]
JC 0x001197d8
CMP R13,qword ptr [RSP + 0x10]
JNC 0x00118bd4
MOV RSI,qword ptr [RSP + 0x10]
SUB RSI,R13
LEA EAX,[RSI + -0x1]
CMP EAX,0x7
JA 0x00118bd4
JMP 0x001197dd
MOV EAX,EDX
MOV qword ptr [RSP + 0x18],RAX
MOV ESI,0x4
JMP 0x001196a1
MOV ESI,0x2
MOV RDI,R14
CALL qword ptr [0x00159e20]
MOV RBX,RAX
TEST AX,AX
JNZ 0x00119911
MOV RAX,qword ptr [RSP + 0x10]
LEA RBX,[RBP + 0x8]
CMP RBX,RAX
JC 0x00118b5e
CMP R13,RAX
JNC 0x00118b74
SUB RAX,R13
MOV RSI,RAX
LEA EAX,[RAX + -0x1]
CMP EAX,0x7
JBE 0x00118b63
JMP 0x00118b74
LEA EAX,[R12 + -0x1]
CMP EAX,0x7
JA 0x00118a03
MOV ESI,R12D
JMP 0x00118af5
MOV RAX,qword ptr [RSP + 0x58]
LEA RBX,[RAX + 0xc]
MOV RAX,qword ptr [RSP + 0x88]
CMP RBX,RAX
JC 0x00119936
CMP RBP,RAX
JNC 0x00119901
SUB RAX,RBP
MOV RSI,RAX
LEA EAX,[RAX + -0x1]
CMP EAX,0x7
JBE 0x0011993b
MOV RBP,RBX
MOV dword ptr [RSP + 0x50],0x8
JMP 0x001189c5
XOR EDI,EDI
MOV EDX,0x5
LEA RSI,[0x13f4b8]
CALL 0x00107230
MOVZX ESI,BX
MOV RDI,RAX
XOR EAX,EAX
CALL 0x001379e0
JMP 0x0011988b
MOV ESI,0x8
MOV RDI,RBP
MOV RBP,RBX
CALL qword ptr [0x00159e20]
MOV dword ptr [RSP + 0x50],0x8
MOV R12,RAX
JMP 0x00118a7c
LEA RCX,[0x144ec0]
MOV EDX,0x2186
LEA RSI,[0x142257]
LEA RDI,[0x13f658]
CALL 0x001072d0
MOV RAX,qword ptr [RSP + 0x60]
MOV EDX,0x5
LEA RSI,[0x13f580]
XOR EDI,EDI
MOV RBX,qword ptr [RAX + 0x20]
CALL 0x00107230
MOV RCX,qword ptr [RSP + 0x58]
MOV RDX,qword ptr [RSP + 0x10]
MOV RSI,R15
MOV RDI,RAX
SUB RSI,RBX
XOR EAX,EAX
SUB RCX,RBX
SUB RDX,RBX
CALL 0x001379e0
XOR EAX,EAX
JMP 0x00118a41
LEA RCX,[0x144ec0]
MOV EDX,0x216a
LEA RSI,[0x142257]
LEA RDI,[0x13f628]
CALL 0x001072d0
MOV ESI,EAX
JMP 0x00119753
MOV R14,RBP
JMP 0x00118c7e
(translation_unit "undefined8 FUN_00118940(long param_1,undefined8 param_2)\n\n{\n  int *piVar1;\n  int *piVar2;\n  int iVar3;\n  byte bVar4;\n  ushort uVar5;\n  short sVar6;\n  uint uVar7;\n  uint uVar8;\n  uint uVar9;\n  ulong uVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  undefined8 uVar14;\n  long *plVar15;\n  long lVar16;\n  long *__ptr;\n  long *plVar17;\n  uint *puVar18;\n  uint *puVar19;\n  uint uVar20;\n  ulong uVar21;\n  long lVar22;\n  undefined *puVar23;\n  int *piVar24;\n  ulong uVar25;\n  long lVar26;\n  long lVar27;\n  int *piVar28;\n  int *piVar29;\n  int *piVar30;\n  bool bVar31;\n  ulong local_d0;\n  int *local_c8;\n  ulong local_c0;\n  ulong local_b8;\n  ulong local_b0;\n  long local_a8;\n  long local_a0;\n  int *local_98;\n  ulong local_90;\n  uint local_88;\n  uint local_84;\n  uint local_3c [3];\n  \n  piVar2 = *(int **)(param_1 + 0x20);\n  piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30));\n  FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18);\n  FUN_0010fed0(10,param_2);\njoined_r0x0011898e:\n  if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }\n  else {\n    uVar12 = 1;\n  }\n  return uVar12;\nLAB_00118eee:\n  piVar29 = piVar29 + uVar21 * 2 + 2;\nLAB_00118ef8:\n  putc(10,stdout);\n  puVar18 = (uint *)(local_90 + (long)piVar29);\n  lVar22 = local_b0 + local_a8;\n  lVar27 = (long)puVar18 + local_b0 + lVar22;\n  piVar30 = (int *)(local_c0 + lVar27);\n  if (local_c8 < piVar30) {\n    lVar22 = *(long *)(param_1 + 0x20);\n    uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);\n    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);\n    return 0;\n  }\n  uVar21 = 0;\n  if (local_b8 != 0) {\n    uVar21 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }\n  uVar10 = 0;\n  lVar26 = 0;\n  pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);\n  printf(pcVar11,uVar21,local_b8);\n  if (local_d0 != 0) {\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar10 = 0;\n    uVar7 = *puVar18;\n    puVar19 = puVar18;\n    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }\n    uVar21 = uVar21 + lVar26;\n  }\n  pcVar11 = (char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5);\n  printf(pcVar11,local_d0,lVar26,uVar10);\n  if (local_d0 != uVar21) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }\n  local_d0 = 0;\n  uVar21 = 0;\n  __ptr = (long *)0x0;\n  while( true ) {\n    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    if (lVar26 == 0) break;\n    if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar21) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    plVar17 = __ptr + uVar21 * 2;\n    if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }\nLAB_001190c6:\n    plVar17[1] = lVar27;\n    *plVar17 = lVar26;\n    uVar21 = uVar21 + 1;\n    FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);\n  }\n  pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5);\n  printf(pcVar11);\n  if ((uint)local_a0 != 0) {\n    local_90 = 0;\n    local_84 = 0;\n    uVar7 = (uint)local_a0 - 1;\n    do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }\n  free(__ptr);\n  piVar2 = local_c8;\n  goto joined_r0x0011898e;\n}\n\n" (function_definition "undefined8 FUN_00118940(long param_1,undefined8 param_2)\n\n{\n  int *piVar1;\n  int *piVar2;\n  int iVar3;\n  byte bVar4;\n  ushort uVar5;\n  short sVar6;\n  uint uVar7;\n  uint uVar8;\n  uint uVar9;\n  ulong uVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  undefined8 uVar14;\n  long *plVar15;\n  long lVar16;\n  long *__ptr;\n  long *plVar17;\n  uint *puVar18;\n  uint *puVar19;\n  uint uVar20;\n  ulong uVar21;\n  long lVar22;\n  undefined *puVar23;\n  int *piVar24;\n  ulong uVar25;\n  long lVar26;\n  long lVar27;\n  int *piVar28;\n  int *piVar29;\n  int *piVar30;\n  bool bVar31;\n  ulong local_d0;\n  int *local_c8;\n  ulong local_c0;\n  ulong local_b8;\n  ulong local_b0;\n  long local_a8;\n  long local_a0;\n  int *local_98;\n  ulong local_90;\n  uint local_88;\n  uint local_84;\n  uint local_3c [3];\n  \n  piVar2 = *(int **)(param_1 + 0x20);\n  piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30));\n  FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18);\n  FUN_0010fed0(10,param_2);\njoined_r0x0011898e:\n  if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }\n  else {\n    uVar12 = 1;\n  }\n  return uVar12;\nLAB_00118eee:\n  piVar29 = piVar29 + uVar21 * 2 + 2;\nLAB_00118ef8:\n  putc(10,stdout);\n  puVar18 = (uint *)(local_90 + (long)piVar29);\n  lVar22 = local_b0 + local_a8;\n  lVar27 = (long)puVar18 + local_b0 + lVar22;\n  piVar30 = (int *)(local_c0 + lVar27);\n  if (local_c8 < piVar30) {\n    lVar22 = *(long *)(param_1 + 0x20);\n    uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);\n    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);\n    return 0;\n  }\n  uVar21 = 0;\n  if (local_b8 != 0) {\n    uVar21 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }\n  uVar10 = 0;\n  lVar26 = 0;\n  pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);\n  printf(pcVar11,uVar21,local_b8);\n  if (local_d0 != 0) {\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar10 = 0;\n    uVar7 = *puVar18;\n    puVar19 = puVar18;\n    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }\n    uVar21 = uVar21 + lVar26;\n  }\n  pcVar11 = (char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5);\n  printf(pcVar11,local_d0,lVar26,uVar10);\n  if (local_d0 != uVar21) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }\n  local_d0 = 0;\n  uVar21 = 0;\n  __ptr = (long *)0x0;\n  while( true ) {\n    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    if (lVar26 == 0) break;\n    if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar21) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    plVar17 = __ptr + uVar21 * 2;\n    if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }\nLAB_001190c6:\n    plVar17[1] = lVar27;\n    *plVar17 = lVar26;\n    uVar21 = uVar21 + 1;\n    FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);\n  }\n  pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5);\n  printf(pcVar11);\n  if ((uint)local_a0 != 0) {\n    local_90 = 0;\n    local_84 = 0;\n    uVar7 = (uint)local_a0 - 1;\n    do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }\n  free(__ptr);\n  piVar2 = local_c8;\n  goto joined_r0x0011898e;\n}" type_identifier (function_declarator "FUN_00118940(long param_1,undefined8 param_2)" identifier (parameter_list "(long param_1,undefined8 param_2)" ( (parameter_declaration "long param_1" (sized_type_specifier "long" long) identifier) , (parameter_declaration "undefined8 param_2" type_identifier identifier) ))) (compound_statement "{\n  int *piVar1;\n  int *piVar2;\n  int iVar3;\n  byte bVar4;\n  ushort uVar5;\n  short sVar6;\n  uint uVar7;\n  uint uVar8;\n  uint uVar9;\n  ulong uVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  undefined8 uVar14;\n  long *plVar15;\n  long lVar16;\n  long *__ptr;\n  long *plVar17;\n  uint *puVar18;\n  uint *puVar19;\n  uint uVar20;\n  ulong uVar21;\n  long lVar22;\n  undefined *puVar23;\n  int *piVar24;\n  ulong uVar25;\n  long lVar26;\n  long lVar27;\n  int *piVar28;\n  int *piVar29;\n  int *piVar30;\n  bool bVar31;\n  ulong local_d0;\n  int *local_c8;\n  ulong local_c0;\n  ulong local_b8;\n  ulong local_b0;\n  long local_a8;\n  long local_a0;\n  int *local_98;\n  ulong local_90;\n  uint local_88;\n  uint local_84;\n  uint local_3c [3];\n  \n  piVar2 = *(int **)(param_1 + 0x20);\n  piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30));\n  FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18);\n  FUN_0010fed0(10,param_2);\njoined_r0x0011898e:\n  if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }\n  else {\n    uVar12 = 1;\n  }\n  return uVar12;\nLAB_00118eee:\n  piVar29 = piVar29 + uVar21 * 2 + 2;\nLAB_00118ef8:\n  putc(10,stdout);\n  puVar18 = (uint *)(local_90 + (long)piVar29);\n  lVar22 = local_b0 + local_a8;\n  lVar27 = (long)puVar18 + local_b0 + lVar22;\n  piVar30 = (int *)(local_c0 + lVar27);\n  if (local_c8 < piVar30) {\n    lVar22 = *(long *)(param_1 + 0x20);\n    uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);\n    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);\n    return 0;\n  }\n  uVar21 = 0;\n  if (local_b8 != 0) {\n    uVar21 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }\n  uVar10 = 0;\n  lVar26 = 0;\n  pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);\n  printf(pcVar11,uVar21,local_b8);\n  if (local_d0 != 0) {\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar10 = 0;\n    uVar7 = *puVar18;\n    puVar19 = puVar18;\n    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }\n    uVar21 = uVar21 + lVar26;\n  }\n  pcVar11 = (char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5);\n  printf(pcVar11,local_d0,lVar26,uVar10);\n  if (local_d0 != uVar21) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }\n  local_d0 = 0;\n  uVar21 = 0;\n  __ptr = (long *)0x0;\n  while( true ) {\n    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    if (lVar26 == 0) break;\n    if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar21) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    plVar17 = __ptr + uVar21 * 2;\n    if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }\nLAB_001190c6:\n    plVar17[1] = lVar27;\n    *plVar17 = lVar26;\n    uVar21 = uVar21 + 1;\n    FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);\n  }\n  pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5);\n  printf(pcVar11);\n  if ((uint)local_a0 != 0) {\n    local_90 = 0;\n    local_84 = 0;\n    uVar7 = (uint)local_a0 - 1;\n    do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }\n  free(__ptr);\n  piVar2 = local_c8;\n  goto joined_r0x0011898e;\n}" { (declaration "int *piVar1;" primitive_type (pointer_declarator "*piVar1" * identifier) ;) (declaration "int *piVar2;" primitive_type (pointer_declarator "*piVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "byte bVar4;" type_identifier identifier ;) (declaration "ushort uVar5;" type_identifier identifier ;) (declaration "short sVar6;" (sized_type_specifier "short" short) identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "ulong uVar10;" type_identifier identifier ;) (declaration "char *pcVar11;" primitive_type (pointer_declarator "*pcVar11" * identifier) ;) (declaration "undefined8 uVar12;" type_identifier identifier ;) (declaration "undefined8 uVar13;" type_identifier identifier ;) (declaration "undefined8 uVar14;" type_identifier identifier ;) (declaration "long *plVar15;" (sized_type_specifier "long" long) (pointer_declarator "*plVar15" * identifier) ;) (declaration "long lVar16;" (sized_type_specifier "long" long) identifier ;) (declaration "long *__ptr;" (sized_type_specifier "long" long) (pointer_declarator "*__ptr" * identifier) ;) (declaration "long *plVar17;" (sized_type_specifier "long" long) (pointer_declarator "*plVar17" * identifier) ;) (declaration "uint *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "uint *puVar19;" type_identifier (pointer_declarator "*puVar19" * identifier) ;) (declaration "uint uVar20;" type_identifier identifier ;) (declaration "ulong uVar21;" type_identifier identifier ;) (declaration "long lVar22;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined *puVar23;" type_identifier (pointer_declarator "*puVar23" * identifier) ;) (declaration "int *piVar24;" primitive_type (pointer_declarator "*piVar24" * identifier) ;) (declaration "ulong uVar25;" type_identifier identifier ;) (declaration "long lVar26;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar27;" (sized_type_specifier "long" long) identifier ;) (declaration "int *piVar28;" primitive_type (pointer_declarator "*piVar28" * identifier) ;) (declaration "int *piVar29;" primitive_type (pointer_declarator "*piVar29" * identifier) ;) (declaration "int *piVar30;" primitive_type (pointer_declarator "*piVar30" * identifier) ;) (declaration "bool bVar31;" primitive_type identifier ;) (declaration "ulong local_d0;" type_identifier identifier ;) (declaration "int *local_c8;" primitive_type (pointer_declarator "*local_c8" * identifier) ;) (declaration "ulong local_c0;" type_identifier identifier ;) (declaration "ulong local_b8;" type_identifier identifier ;) (declaration "ulong local_b0;" type_identifier identifier ;) (declaration "long local_a8;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_a0;" (sized_type_specifier "long" long) identifier ;) (declaration "int *local_98;" primitive_type (pointer_declarator "*local_98" * identifier) ;) (declaration "ulong local_90;" type_identifier identifier ;) (declaration "uint local_88;" type_identifier identifier ;) (declaration "uint local_84;" type_identifier identifier ;) (declaration "uint local_3c [3];" type_identifier (array_declarator "local_3c [3]" identifier [ number_literal ]) ;) (expression_statement "piVar2 = *(int **)(param_1 + 0x20);" (assignment_expression "piVar2 = *(int **)(param_1 + 0x20)" identifier = (pointer_expression "*(int **)(param_1 + 0x20)" * (cast_expression "(int **)(param_1 + 0x20)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) ;) (expression_statement "piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30));" (assignment_expression "piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30))" identifier = (cast_expression "(int *)((long)piVar2 + *(long *)(param_1 + 0x30))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar2 + *(long *)(param_1 + 0x30))" ( (binary_expression "(long)piVar2 + *(long *)(param_1 + 0x30)" (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (pointer_expression "*(long *)(param_1 + 0x30)" * (cast_expression "(long *)(param_1 + 0x30)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) ))))) )))) ;) (expression_statement "FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18);" (call_expression "FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18)" identifier (argument_list "(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18)" ( (pointer_expression "*(undefined8 *)(param_1 + 0x10)" * (cast_expression "(undefined8 *)(param_1 + 0x10)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) )))) , (binary_expression "param_1 + 0x18" identifier + number_literal) ))) ;) (expression_statement "FUN_0010fed0(10,param_2);" (call_expression "FUN_0010fed0(10,param_2)" identifier (argument_list "(10,param_2)" ( number_literal , identifier ))) ;) (labeled_statement "joined_r0x0011898e:\n  if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }\n  else {\n    uVar12 = 1;\n  }" statement_identifier : (if_statement "if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }\n  else {\n    uVar12 = 1;\n  }" if (parenthesized_expression "(piVar2 < piVar28)" ( (binary_expression "piVar2 < piVar28" identifier < identifier) )) (compound_statement "{\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }" { (expression_statement "piVar29 = piVar2 + 1;" (assignment_expression "piVar29 = piVar2 + 1" identifier = (binary_expression "piVar2 + 1" identifier + number_literal)) ;) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" identifier = identifier) ;) (if_statement "if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }" if (parenthesized_expression "(piVar29 < piVar28)" ( (binary_expression "piVar29 < piVar28" identifier < identifier) )) (compound_statement "{\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }" { (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);" statement_identifier : (expression_statement "uVar21 = (*DAT_00159e20)(piVar2,lVar22);" (assignment_expression "uVar21 = (*DAT_00159e20)(piVar2,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar2,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar2,lVar22)" ( identifier , identifier )))) ;)) (expression_statement "local_88 = 4;" (assignment_expression "local_88 = 4" identifier = number_literal) ;) (if_statement "if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }" if (parenthesized_expression "(uVar21 == 0xffffffff)" ( (binary_expression "uVar21 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }" { (expression_statement "piVar30 = piVar2 + 3;" (assignment_expression "piVar30 = piVar2 + 3" identifier = (binary_expression "piVar2 + 3" identifier + number_literal)) ;) (if_statement "if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" if (parenthesized_expression "(piVar30 < piVar28)" ( (binary_expression "piVar30 < piVar28" identifier < identifier) )) (compound_statement "{\n          lVar22 = 8;\n        }" { (expression_statement "lVar22 = 8;" (assignment_expression "lVar22 = 8" identifier = number_literal) ;) }) (else_clause "else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" else (if_statement "if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" if (parenthesized_expression "((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U))" ( (binary_expression "(piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)" (parenthesized_expression "(piVar28 <= piVar29)" ( (binary_expression "piVar28 <= piVar29" identifier <= identifier) )) || (parenthesized_expression "(lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)" ( (comma_expression "lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U" (assignment_expression "lVar22 = (long)piVar28 - (long)piVar29" identifier = (binary_expression "(long)piVar28 - (long)piVar29" (cast_expression "(long)piVar28" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) , (binary_expression "7 < (int)lVar22 - 1U" number_literal < (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal))) ))) )) (compound_statement "{\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" { (expression_statement "local_88 = 8;" (assignment_expression "local_88 = 8" identifier = number_literal) ;) (goto_statement "goto LAB_001189c5;" goto statement_identifier ;) })))) (expression_statement "uVar21 = (*DAT_00159e20)(piVar29,lVar22);" (assignment_expression "uVar21 = (*DAT_00159e20)(piVar29,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar29,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar29,lVar22)" ( identifier , identifier )))) ;) (expression_statement "local_88 = 8;" (assignment_expression "local_88 = 8" identifier = number_literal) ;) })) (expression_statement "local_c8 = (int *)((long)piVar30 + uVar21);" (assignment_expression "local_c8 = (int *)((long)piVar30 + uVar21)" identifier = (cast_expression "(int *)((long)piVar30 + uVar21)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar30 + uVar21)" ( (binary_expression "(long)piVar30 + uVar21" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) )))) ;) (expression_statement "uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);" (assignment_expression "uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20)" identifier = (binary_expression "(long)piVar30 - *(long *)(param_1 + 0x20)" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))))) ;) (expression_statement "uVar10 = uVar25 + uVar21;" (assignment_expression "uVar10 = uVar25 + uVar21" identifier = (binary_expression "uVar25 + uVar21" identifier + identifier)) ;) (if_statement "if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;" if (parenthesized_expression "(!CARRY8(uVar25,uVar21))" ( (unary_expression "!CARRY8(uVar25,uVar21)" ! (call_expression "CARRY8(uVar25,uVar21)" identifier (argument_list "(uVar25,uVar21)" ( identifier , identifier )))) )) (goto_statement "goto LAB_001189d9;" goto statement_identifier ;)) (labeled_statement "LAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);" statement_identifier : (expression_statement "uVar13 = FUN_0010ebb0("x",uVar21,0);" (assignment_expression "uVar13 = FUN_0010ebb0("x",uVar21,0)" identifier = (call_expression "FUN_0010ebb0("x",uVar21,0)" identifier (argument_list "("x",uVar21,0)" ( (string_literal ""x"" " string_content ") , identifier , number_literal )))) ;)) (expression_statement "uVar12 = *(undefined8 *)(param_1 + 0x10);" (assignment_expression "uVar12 = *(undefined8 *)(param_1 + 0x10)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x10)" * (cast_expression "(undefined8 *)(param_1 + 0x10)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "lVar22 = *(long *)(param_1 + 0x20);" (assignment_expression "lVar22 = *(long *)(param_1 + 0x20)" identifier = (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) ;) (expression_statement "uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);" (assignment_expression "uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5)" identifier = (call_expression "dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5)" identifier (argument_list "(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5)" ( number_literal , (string_literal ""Debug info is corrupted, %s header at %#lx has length %s\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);" (call_expression "warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13)" identifier (argument_list "(uVar14,uVar12,(long)piVar2 - lVar22,uVar13)" ( identifier , identifier , (binary_expression "(long)piVar2 - lVar22" (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) , identifier ))) ;) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) }) (else_clause "else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }" else (compound_statement "{\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }" { (expression_statement "lVar22 = (long)piVar28 - (long)piVar2;" (assignment_expression "lVar22 = (long)piVar28 - (long)piVar2" identifier = (binary_expression "(long)piVar28 - (long)piVar2" (cast_expression "(long)piVar28" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) ;) (if_statement "if ((int)lVar22 - 1U < 8) goto LAB_00118a58;" if (parenthesized_expression "((int)lVar22 - 1U < 8)" ( (binary_expression "(int)lVar22 - 1U < 8" (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal) < number_literal) )) (goto_statement "goto LAB_00118a58;" goto statement_identifier ;)) (expression_statement "local_88 = 4;" (assignment_expression "local_88 = 4" identifier = number_literal) ;) (labeled_statement "LAB_001189c5:\n      uVar21 = 0;" statement_identifier : (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;)) (expression_statement "uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);" (assignment_expression "uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20)" identifier = (binary_expression "(long)piVar30 - *(long *)(param_1 + 0x20)" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))))) ;) (expression_statement "local_c8 = piVar30;" (assignment_expression "local_c8 = piVar30" identifier = identifier) ;) (labeled_statement "LAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;" statement_identifier : (if_statement "if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;" if (parenthesized_expression "(*(ulong *)(param_1 + 0x30) < uVar10)" ( (binary_expression "*(ulong *)(param_1 + 0x30) < uVar10" (pointer_expression "*(ulong *)(param_1 + 0x30)" * (cast_expression "(ulong *)(param_1 + 0x30)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) < identifier) )) (goto_statement "goto LAB_00118a9b;" goto statement_identifier ;))) (expression_statement "piVar29 = (int *)((long)piVar30 + 2);" (assignment_expression "piVar29 = (int *)((long)piVar30 + 2)" identifier = (cast_expression "(int *)((long)piVar30 + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar30 + 2)" ( (binary_expression "(long)piVar30 + 2" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) (if_statement "if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }" if (parenthesized_expression "(piVar29 < local_c8)" ( (binary_expression "piVar29 < local_c8" identifier < identifier) )) (compound_statement "{\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }" { (expression_statement "uVar10 = 2;" (assignment_expression "uVar10 = 2" identifier = number_literal) ;) (labeled_statement "LAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);" statement_identifier : (expression_statement "uVar5 = (*DAT_00159e20)(piVar30,uVar10);" (assignment_expression "uVar5 = (*DAT_00159e20)(piVar30,uVar10)" identifier = (call_expression "(*DAT_00159e20)(piVar30,uVar10)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30,uVar10)" ( identifier , identifier )))) ;)) (expression_statement "pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Version %ld\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Version %ld\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Version %ld\n",5)" identifier (argument_list "(0,"Version %ld\n",5)" ( number_literal , (string_literal ""Version %ld\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11,(ulong)uVar5);" (call_expression "printf(pcVar11,(ulong)uVar5)" identifier (argument_list "(pcVar11,(ulong)uVar5)" ( identifier , (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (if_statement "if (uVar5 != 5) goto LAB_00118a22;" if (parenthesized_expression "(uVar5 != 5)" ( (binary_expression "uVar5 != 5" identifier != number_literal) )) (goto_statement "goto LAB_00118a22;" goto statement_identifier ;)) (expression_statement "piVar24 = piVar30 + 1;" (assignment_expression "piVar24 = piVar30 + 1" identifier = (binary_expression "piVar30 + 1" identifier + number_literal)) ;) (if_statement "if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }" if (parenthesized_expression "(piVar24 < local_c8)" ( (binary_expression "piVar24 < local_c8" identifier < identifier) )) (compound_statement "{\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }" { (expression_statement "lVar22 = 2;" (assignment_expression "lVar22 = 2" identifier = number_literal) ;) (labeled_statement "LAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);" statement_identifier : (expression_statement "sVar6 = (*DAT_00159e20)(piVar29,lVar22);" (assignment_expression "sVar6 = (*DAT_00159e20)(piVar29,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar29,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar29,lVar22)" ( identifier , identifier )))) ;)) (if_statement "if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }" if (parenthesized_expression "(sVar6 != 0)" ( (binary_expression "sVar6 != 0" identifier != number_literal) )) (compound_statement "{\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }" { (expression_statement "uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)" identifier = (call_expression "dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)" identifier (argument_list "(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)" ( number_literal , (string_literal ""Padding field of .debug_names must be 0 (found 0x%x)\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,sVar6);" (call_expression "warn(uVar12,sVar6)" identifier (argument_list "(uVar12,sVar6)" ( identifier , identifier ))) ;) })) (if_statement "if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;" if (parenthesized_expression "(piVar30 + 2 < local_c8)" ( (binary_expression "piVar30 + 2 < local_c8" (binary_expression "piVar30 + 2" identifier + number_literal) < identifier) )) (compound_statement "{\nLAB_00118b5e:\n            lVar22 = 4;\n          }" { (labeled_statement "LAB_00118b5e:\n            lVar22 = 4;" statement_identifier : (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" identifier = number_literal) ;)) }) (else_clause "else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;" else (if_statement "if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;" if (parenthesized_expression "((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))" ( (binary_expression "(local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U)" (parenthesized_expression "(local_c8 <= piVar24)" ( (binary_expression "local_c8 <= piVar24" identifier <= identifier) )) || (parenthesized_expression "(lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U)" ( (comma_expression "lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U" (assignment_expression "lVar22 = (long)local_c8 - (long)piVar24" identifier = (binary_expression "(long)local_c8 - (long)piVar24" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) , (binary_expression "7 < (int)lVar22 - 1U" number_literal < (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal))) ))) )) (goto_statement "goto LAB_00118b74;" goto statement_identifier ;)))) (expression_statement "uVar7 = (*DAT_00159e20)(piVar24,lVar22);" (assignment_expression "uVar7 = (*DAT_00159e20)(piVar24,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar24,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar24,lVar22)" ( identifier , identifier )))) ;) (if_statement "if (uVar7 == 0) goto LAB_00118b74;" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00118b74;" goto statement_identifier ;)) }) (else_clause "else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }" else (compound_statement "{\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }" { (if_statement "if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;" if (parenthesized_expression "((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))" ( (binary_expression "(piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8)" (parenthesized_expression "(piVar29 < local_c8)" ( (binary_expression "piVar29 < local_c8" identifier < identifier) )) && (parenthesized_expression "(lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8)" ( (comma_expression "lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8" (assignment_expression "lVar22 = uVar21 - 2" identifier = (binary_expression "uVar21 - 2" identifier - number_literal)) , (binary_expression "(int)lVar22 - 1U < 8" (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00119876;" goto statement_identifier ;)) (if_statement "if (piVar30 + 2 < local_c8) goto LAB_00118b5e;" if (parenthesized_expression "(piVar30 + 2 < local_c8)" ( (binary_expression "piVar30 + 2 < local_c8" (binary_expression "piVar30 + 2" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_00118b5e;" goto statement_identifier ;)) (labeled_statement "LAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);" statement_identifier : (expression_statement "uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5)" identifier = (call_expression "dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5)" identifier (argument_list "(0,"Compilation unit count must be >= 1 in .debug_names\n",5)" ( number_literal , (string_literal ""Compilation unit count must be >= 1 in .debug_names\n"" " string_content escape_sequence ") , number_literal )))) ;)) (expression_statement "warn(uVar12);" (call_expression "warn(uVar12)" identifier (argument_list "(uVar12)" ( identifier ))) ;) (expression_statement "uVar7 = 0;" (assignment_expression "uVar7 = 0" identifier = number_literal) ;) }))) (expression_statement "piVar24 = piVar30 + 2;" (assignment_expression "piVar24 = piVar30 + 2" identifier = (binary_expression "piVar30 + 2" identifier + number_literal)) ;) (expression_statement "piVar29 = piVar30 + 3;" (assignment_expression "piVar29 = piVar30 + 3" identifier = (binary_expression "piVar30 + 3" identifier + number_literal)) ;) (expression_statement "iVar3 = (int)local_c8;" (assignment_expression "iVar3 = (int)local_c8" identifier = (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }" if (parenthesized_expression "(piVar29 < local_c8)" ( (binary_expression "piVar29 < local_c8" identifier < identifier) )) (compound_statement "{\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }" { (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);" statement_identifier : (expression_statement "uVar8 = (*DAT_00159e20)(piVar24,lVar22);" (assignment_expression "uVar8 = (*DAT_00159e20)(piVar24,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar24,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar24,lVar22)" ( identifier , identifier )))) ;)) (if_statement "if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;" if (parenthesized_expression "(piVar30 + 4 < local_c8)" ( (binary_expression "piVar30 + 4 < local_c8" (binary_expression "piVar30 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\nLAB_001197d8:\n            lVar22 = 4;\n          }" { (labeled_statement "LAB_001197d8:\n            lVar22 = 4;" statement_identifier : (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" identifier = number_literal) ;)) }) (else_clause "else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;" else (if_statement "if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;" if (parenthesized_expression "((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))" ( (binary_expression "(local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U)" (parenthesized_expression "(local_c8 <= piVar29)" ( (binary_expression "local_c8 <= piVar29" identifier <= identifier) )) || (parenthesized_expression "(lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U)" ( (comma_expression "lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U" (assignment_expression "lVar22 = (long)local_c8 - (long)piVar29" identifier = (binary_expression "(long)local_c8 - (long)piVar29" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) , (binary_expression "7 < (int)lVar22 - 1U" number_literal < (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal))) ))) )) (goto_statement "goto LAB_00118bd4;" goto statement_identifier ;)))) (expression_statement "local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);" (assignment_expression "local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22)" (field_expression "local_98._0_4_" identifier . field_identifier) = (call_expression "(*DAT_00159e20)(piVar29,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar29,lVar22)" ( identifier , identifier )))) ;) (if_statement "if (piVar30 + 5 < local_c8) goto LAB_001195e0;" if (parenthesized_expression "(piVar30 + 5 < local_c8)" ( (binary_expression "piVar30 + 5 < local_c8" (binary_expression "piVar30 + 5" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_001195e0;" goto statement_identifier ;)) (if_statement "if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;" if (parenthesized_expression "((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))" ( (binary_expression "(piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8)" (parenthesized_expression "(piVar30 + 4 < local_c8)" ( (binary_expression "piVar30 + 4 < local_c8" (binary_expression "piVar30 + 4" identifier + number_literal) < identifier) )) && (parenthesized_expression "(lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8)" ( (comma_expression "lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8" (assignment_expression "lVar22 = (long)local_c8 - (long)(piVar30 + 4)" identifier = (binary_expression "(long)local_c8 - (long)(piVar30 + 4)" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)(piVar30 + 4)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "(piVar30 + 4)" ( (binary_expression "piVar30 + 4" identifier + number_literal) ))))) , (binary_expression "(int)lVar22 - 1U < 8" (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_001195e5;" goto statement_identifier ;)) (labeled_statement "LAB_00118beb:\n          local_b8 = 0;" statement_identifier : (expression_statement "local_b8 = 0;" (assignment_expression "local_b8 = 0" identifier = number_literal) ;)) (expression_statement "local_84 = 0;" (assignment_expression "local_84 = 0" identifier = number_literal) ;) (expression_statement "local_90 = 0;" (assignment_expression "local_90 = 0" identifier = number_literal) ;) (if_statement "if (local_c8 <= piVar30 + 6) goto LAB_00118c14;" if (parenthesized_expression "(local_c8 <= piVar30 + 6)" ( (binary_expression "local_c8 <= piVar30 + 6" identifier <= (binary_expression "piVar30 + 6" identifier + number_literal)) )) (goto_statement "goto LAB_00118c14;" goto statement_identifier ;)) (labeled_statement "LAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);" statement_identifier : (expression_statement "local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);" (assignment_expression "local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4)" (field_expression "local_a0._0_4_" identifier . field_identifier) = (call_expression "(*DAT_00159e20)(piVar30 + 5,4)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30 + 5,4)" ( (binary_expression "piVar30 + 5" identifier + number_literal) , number_literal )))) ;)) (expression_statement "local_d0 = (ulong)(uint)local_a0;" (assignment_expression "local_d0 = (ulong)(uint)local_a0" identifier = (cast_expression "(ulong)(uint)local_a0" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(uint)local_a0" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "local_b0 = (ulong)((uint)local_a0 * local_88);" (assignment_expression "local_b0 = (ulong)((uint)local_a0 * local_88)" identifier = (call_expression "(ulong)((uint)local_a0 * local_88)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((uint)local_a0 * local_88)" ( (binary_expression "(uint)local_a0 * local_88" (cast_expression "(uint)local_a0" ( (type_descriptor "uint" type_identifier) ) identifier) * identifier) )))) ;) (expression_statement "local_a8 = local_d0 << 2;" (assignment_expression "local_a8 = local_d0 << 2" identifier = (binary_expression "local_d0 << 2" identifier << number_literal)) ;) (if_statement "if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }" if (parenthesized_expression "(piVar30 + 7 < local_c8)" ( (binary_expression "piVar30 + 7 < local_c8" (binary_expression "piVar30 + 7" identifier + number_literal) < identifier) )) (compound_statement "{\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }" { (labeled_statement "LAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);" statement_identifier : (expression_statement "uVar20 = (*DAT_00159e20)(piVar30 + 6,4);" (assignment_expression "uVar20 = (*DAT_00159e20)(piVar30 + 6,4)" identifier = (call_expression "(*DAT_00159e20)(piVar30 + 6,4)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30 + 6,4)" ( (binary_expression "piVar30 + 6" identifier + number_literal) , number_literal )))) ;)) (if_statement "if (piVar30 + 8 < local_c8) goto LAB_00119860;" if (parenthesized_expression "(piVar30 + 8 < local_c8)" ( (binary_expression "piVar30 + 8 < local_c8" (binary_expression "piVar30 + 8" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_00119860;" goto statement_identifier ;)) (expression_statement "local_c0 = (ulong)uVar20;" (assignment_expression "local_c0 = (ulong)uVar20" identifier = (cast_expression "(ulong)uVar20" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "lVar22 = (long)local_c8 - (long)(piVar30 + 7);" (assignment_expression "lVar22 = (long)local_c8 - (long)(piVar30 + 7)" identifier = (binary_expression "(long)local_c8 - (long)(piVar30 + 7)" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)(piVar30 + 7)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "(piVar30 + 7)" ( (binary_expression "piVar30 + 7" identifier + number_literal) ))))) ;) (if_statement "if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;" if (parenthesized_expression "(7 < (int)lVar22 - 1U)" ( (binary_expression "7 < (int)lVar22 - 1U" number_literal < (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal)) )) (goto_statement "goto LAB_00118c5e;" goto statement_identifier ;)) }) (else_clause "else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }" else (compound_statement "{\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }" { (if_statement "if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;" if (parenthesized_expression "(7 < (iVar3 - (int)(piVar30 + 6)) - 1U)" ( (binary_expression "7 < (iVar3 - (int)(piVar30 + 6)) - 1U" number_literal < (binary_expression "(iVar3 - (int)(piVar30 + 6)) - 1U" (parenthesized_expression "(iVar3 - (int)(piVar30 + 6))" ( (binary_expression "iVar3 - (int)(piVar30 + 6)" identifier - (cast_expression "(int)(piVar30 + 6)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar30 + 6)" ( (binary_expression "piVar30 + 6" identifier + number_literal) )))) )) - number_literal)) )) (goto_statement "goto LAB_00118c46;" goto statement_identifier ;)) (expression_statement "uVar20 = (*DAT_00159e20)(piVar30 + 6);" (assignment_expression "uVar20 = (*DAT_00159e20)(piVar30 + 6)" identifier = (call_expression "(*DAT_00159e20)(piVar30 + 6)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30 + 6)" ( (binary_expression "piVar30 + 6" identifier + number_literal) )))) ;) (if_statement "if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }" if (parenthesized_expression "(local_c8 <= piVar30 + 8)" ( (binary_expression "local_c8 <= piVar30 + 8" identifier <= (binary_expression "piVar30 + 8" identifier + number_literal)) )) (compound_statement "{\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }" { (expression_statement "local_c0 = (ulong)uVar20;" (assignment_expression "local_c0 = (ulong)uVar20" identifier = (cast_expression "(ulong)uVar20" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (goto_statement "goto LAB_00118c5e;" goto statement_identifier ;) })) (labeled_statement "LAB_00119860:\n            local_c0 = (ulong)uVar20;" statement_identifier : (expression_statement "local_c0 = (ulong)uVar20;" (assignment_expression "local_c0 = (ulong)uVar20" identifier = (cast_expression "(ulong)uVar20" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;)) (labeled_statement "LAB_00119867:\n            lVar22 = 4;" statement_identifier : (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" identifier = number_literal) ;)) }))) (expression_statement "piVar29 = piVar30 + 8;" (assignment_expression "piVar29 = piVar30 + 8" identifier = (binary_expression "piVar30 + 8" identifier + number_literal)) ;) (expression_statement "uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);" (assignment_expression "uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar30 + 7,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30 + 7,lVar22)" ( (binary_expression "piVar30 + 7" identifier + number_literal) , identifier )))) ;) (expression_statement "uVar20 = uVar9;" (assignment_expression "uVar20 = uVar9" identifier = identifier) ;) (if_statement "if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }" if (parenthesized_expression "((uVar9 & 3) != 0)" ( (binary_expression "(uVar9 & 3) != 0" (parenthesized_expression "(uVar9 & 3)" ( (binary_expression "uVar9 & 3" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }" { (expression_statement "uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5)" identifier = (call_expression "dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5)" identifier (argument_list "(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5)" ( number_literal , (string_literal ""Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "uVar20 = (-uVar9 & 3) + uVar9;" (assignment_expression "uVar20 = (-uVar9 & 3) + uVar9" identifier = (binary_expression "(-uVar9 & 3) + uVar9" (parenthesized_expression "(-uVar9 & 3)" ( (binary_expression "-uVar9 & 3" (unary_expression "-uVar9" - identifier) & number_literal) )) + identifier)) ;) (expression_statement "warn(uVar12,uVar9);" (call_expression "warn(uVar12,uVar9)" identifier (argument_list "(uVar12,uVar9)" ( identifier , identifier ))) ;) })) (expression_statement "pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Augmentation string:",5)" identifier = (cast_expression "(char *)dcgettext(0,"Augmentation string:",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Augmentation string:",5)" identifier (argument_list "(0,"Augmentation string:",5)" ( number_literal , (string_literal ""Augmentation string:"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier ))) ;) (if_statement "if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }" if (parenthesized_expression "(uVar20 != 0)" ( (binary_expression "uVar20 != 0" identifier != number_literal) )) (compound_statement "{\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }" { (expression_statement "piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);" (assignment_expression "piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21)" identifier = (cast_expression "(int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar30 + (ulong)(uVar20 - 1) + 0x21)" ( (binary_expression "(long)piVar30 + (ulong)(uVar20 - 1) + 0x21" (binary_expression "(long)piVar30 + (ulong)(uVar20 - 1)" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (call_expression "(ulong)(uVar20 - 1)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar20 - 1)" ( (binary_expression "uVar20 - 1" identifier - number_literal) )))) + number_literal) )))) ;) (expression_statement "piVar24 = piVar29;" (assignment_expression "piVar24 = piVar29" identifier = identifier) ;) (do_statement "do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);" do (compound_statement "{\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            }" { (expression_statement "piVar1 = (int *)((long)piVar24 + 1);" (assignment_expression "piVar1 = (int *)((long)piVar24 + 1)" identifier = (cast_expression "(int *)((long)piVar24 + 1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar24 + 1)" ( (binary_expression "(long)piVar24 + 1" (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) (if_statement "if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }" if (parenthesized_expression "(piVar1 < local_c8)" ( (binary_expression "piVar1 < local_c8" identifier < identifier) )) (compound_statement "{\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }" { (expression_statement "uVar21 = 1;" (assignment_expression "uVar21 = 1" identifier = number_literal) ;) (labeled_statement "LAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);" statement_identifier : (expression_statement "bVar4 = (*DAT_00159e20)(piVar24,uVar21);" (assignment_expression "bVar4 = (*DAT_00159e20)(piVar24,uVar21)" identifier = (call_expression "(*DAT_00159e20)(piVar24,uVar21)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar24,uVar21)" ( identifier , identifier )))) ;)) (expression_statement "uVar21 = (ulong)bVar4;" (assignment_expression "uVar21 = (ulong)bVar4" identifier = (cast_expression "(ulong)bVar4" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) }) (else_clause "else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }" else (compound_statement "{\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }" { (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (if_statement "if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }" if (parenthesized_expression "((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8))" ( (binary_expression "(piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)" (parenthesized_expression "(piVar24 < local_c8)" ( (binary_expression "piVar24 < local_c8" identifier < identifier) )) && (parenthesized_expression "((int)((long)local_c8 - (long)piVar24) - 1U < 8)" ( (binary_expression "(int)((long)local_c8 - (long)piVar24) - 1U < 8" (binary_expression "(int)((long)local_c8 - (long)piVar24) - 1U" (cast_expression "(int)((long)local_c8 - (long)piVar24)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((long)local_c8 - (long)piVar24)" ( (binary_expression "(long)local_c8 - (long)piVar24" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) - number_literal) < number_literal) ))) )) (compound_statement "{\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }" { (expression_statement "uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;" (assignment_expression "uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff" identifier = (binary_expression "(long)local_c8 - (long)piVar24 & 0xffffffff" (binary_expression "(long)local_c8 - (long)piVar24" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) & number_literal)) ;) (goto_statement "goto LAB_00119753;" goto statement_identifier ;) })) }))) (expression_statement "printf(" %02x",uVar21);" (call_expression "printf(" %02x",uVar21)" identifier (argument_list "(" %02x",uVar21)" ( (string_literal "" %02x"" " string_content ") , identifier ))) ;) (expression_statement "piVar24 = piVar1;" (assignment_expression "piVar24 = piVar1" identifier = identifier) ;) (expression_statement "piVar29 = piVar30;" (assignment_expression "piVar29 = piVar30" identifier = identifier) ;) }) while (parenthesized_expression "(piVar1 != piVar30)" ( (binary_expression "piVar1 != piVar30" identifier != identifier) )) ;) })) }) (else_clause "else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }" else (compound_statement "{\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }" { (if_statement "if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;" if (parenthesized_expression "((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8))" ( (binary_expression "(piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)" (parenthesized_expression "(piVar24 < local_c8)" ( (binary_expression "piVar24 < local_c8" identifier < identifier) )) && (parenthesized_expression "(lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)" ( (comma_expression "lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8" (assignment_expression "lVar22 = (long)local_c8 - (long)piVar24" identifier = (binary_expression "(long)local_c8 - (long)piVar24" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) , (binary_expression "(int)lVar22 - 1U < 8" (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00119825;" goto statement_identifier ;)) (expression_statement "uVar8 = 0;" (assignment_expression "uVar8 = 0" identifier = number_literal) ;) (if_statement "if (piVar30 + 4 < local_c8) goto LAB_001197d8;" if (parenthesized_expression "(piVar30 + 4 < local_c8)" ( (binary_expression "piVar30 + 4 < local_c8" (binary_expression "piVar30 + 4" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_001197d8;" goto statement_identifier ;)) (labeled_statement "LAB_00118bd4:\n          local_98._0_4_ = 0;" statement_identifier : (expression_statement "local_98._0_4_ = 0;" (assignment_expression "local_98._0_4_ = 0" (field_expression "local_98._0_4_" identifier . field_identifier) = number_literal) ;)) (if_statement "if (local_c8 <= piVar30 + 5) goto LAB_00118beb;" if (parenthesized_expression "(local_c8 <= piVar30 + 5)" ( (binary_expression "local_c8 <= piVar30 + 5" identifier <= (binary_expression "piVar30 + 5" identifier + number_literal)) )) (goto_statement "goto LAB_00118beb;" goto statement_identifier ;)) (labeled_statement "LAB_001195e0:\n          lVar22 = 4;" statement_identifier : (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" identifier = number_literal) ;)) (labeled_statement "LAB_001195e5:\n          piVar29 = piVar30 + 5;" statement_identifier : (expression_statement "piVar29 = piVar30 + 5;" (assignment_expression "piVar29 = piVar30 + 5" identifier = (binary_expression "piVar30 + 5" identifier + number_literal)) ;)) (expression_statement "local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);" (assignment_expression "local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar30 + 4,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30 + 4,lVar22)" ( (binary_expression "piVar30 + 4" identifier + number_literal) , identifier )))) ;) (expression_statement "local_b8 = (ulong)local_84;" (assignment_expression "local_b8 = (ulong)local_84" identifier = (cast_expression "(ulong)local_84" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "local_90 = local_b8 << 2;" (assignment_expression "local_90 = local_b8 << 2" identifier = (binary_expression "local_b8 << 2" identifier << number_literal)) ;) (if_statement "if (piVar30 + 6 < local_c8) goto LAB_0011975e;" if (parenthesized_expression "(piVar30 + 6 < local_c8)" ( (binary_expression "piVar30 + 6 < local_c8" (binary_expression "piVar30 + 6" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_0011975e;" goto statement_identifier ;)) (if_statement "if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }" if (parenthesized_expression "((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U))" ( (binary_expression "(local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)" (parenthesized_expression "(local_c8 <= piVar29)" ( (binary_expression "local_c8 <= piVar29" identifier <= identifier) )) || (parenthesized_expression "(7 < (int)((long)local_c8 - (long)piVar29) - 1U)" ( (binary_expression "7 < (int)((long)local_c8 - (long)piVar29) - 1U" number_literal < (binary_expression "(int)((long)local_c8 - (long)piVar29) - 1U" (cast_expression "(int)((long)local_c8 - (long)piVar29)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((long)local_c8 - (long)piVar29)" ( (binary_expression "(long)local_c8 - (long)piVar29" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) - number_literal)) ))) )) (compound_statement "{\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }" { (labeled_statement "LAB_00118c14:\n            local_a8 = 0;" statement_identifier : (expression_statement "local_a8 = 0;" (assignment_expression "local_a8 = 0" identifier = number_literal) ;)) (expression_statement "local_d0 = 0;" (assignment_expression "local_d0 = 0" identifier = number_literal) ;) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) (expression_statement "local_a0._0_4_ = 0;" (assignment_expression "local_a0._0_4_ = 0" (field_expression "local_a0._0_4_" identifier . field_identifier) = number_literal) ;) (if_statement "if (local_c8 <= piVar30 + 7) goto LAB_00118c46;" if (parenthesized_expression "(local_c8 <= piVar30 + 7)" ( (binary_expression "local_c8 <= piVar30 + 7" identifier <= (binary_expression "piVar30 + 7" identifier + number_literal)) )) (goto_statement "goto LAB_00118c46;" goto statement_identifier ;)) (goto_statement "goto LAB_00119667;" goto statement_identifier ;) })) (expression_statement "local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);" (assignment_expression "local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29)" (field_expression "local_a0._0_4_" identifier . field_identifier) = (call_expression "(*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar29,(long)local_c8 - (long)piVar29)" ( identifier , (binary_expression "(long)local_c8 - (long)piVar29" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) ;) (expression_statement "local_d0 = (ulong)(uint)local_a0;" (assignment_expression "local_d0 = (ulong)(uint)local_a0" identifier = (cast_expression "(ulong)(uint)local_a0" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(uint)local_a0" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "local_b0 = (ulong)((uint)local_a0 * local_88);" (assignment_expression "local_b0 = (ulong)((uint)local_a0 * local_88)" identifier = (call_expression "(ulong)((uint)local_a0 * local_88)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((uint)local_a0 * local_88)" ( (binary_expression "(uint)local_a0 * local_88" (cast_expression "(uint)local_a0" ( (type_descriptor "uint" type_identifier) ) identifier) * identifier) )))) ;) (expression_statement "local_a8 = local_d0 << 2;" (assignment_expression "local_a8 = local_d0 << 2" identifier = (binary_expression "local_d0 << 2" identifier << number_literal)) ;) (if_statement "if (piVar30 + 7 < local_c8) goto LAB_00119667;" if (parenthesized_expression "(piVar30 + 7 < local_c8)" ( (binary_expression "piVar30 + 7 < local_c8" (binary_expression "piVar30 + 7" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_00119667;" goto statement_identifier ;)) (labeled_statement "LAB_00118c46:\n          local_c0 = 0;" statement_identifier : (expression_statement "local_c0 = 0;" (assignment_expression "local_c0 = 0" identifier = number_literal) ;)) (if_statement "if (piVar30 + 8 < local_c8) goto LAB_00119867;" if (parenthesized_expression "(piVar30 + 8 < local_c8)" ( (binary_expression "piVar30 + 8 < local_c8" (binary_expression "piVar30 + 8" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_00119867;" goto statement_identifier ;)) (labeled_statement "LAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);" statement_identifier : (expression_statement "pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Augmentation string:",5)" identifier = (cast_expression "(char *)dcgettext(0,"Augmentation string:",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Augmentation string:",5)" identifier (argument_list "(0,"Augmentation string:",5)" ( number_literal , (string_literal ""Augmentation string:"" " string_content ") , number_literal ))))) ;)) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier ))) ;) (expression_statement "piVar29 = piVar30 + 8;" (assignment_expression "piVar29 = piVar30 + 8" identifier = (binary_expression "piVar30 + 8" identifier + number_literal)) ;) }))) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "pcVar11 = (char *)dcgettext(0,"CU table:\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"CU table:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"CU table:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"CU table:\n",5)" identifier (argument_list "(0,"CU table:\n",5)" ( number_literal , (string_literal ""CU table:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier ))) ;) (if_statement "if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }" if (parenthesized_expression "(uVar7 != 0)" ( (binary_expression "uVar7 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }" { (expression_statement "uVar10 = (ulong)local_88;" (assignment_expression "uVar10 = (ulong)local_88" identifier = (cast_expression "(ulong)local_88" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" identifier = identifier) ;) (do_statement "do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);" do (compound_statement "{\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          }" { (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" identifier = identifier) ;) (expression_statement "piVar24 = (int *)((long)piVar30 + uVar10);" (assignment_expression "piVar24 = (int *)((long)piVar30 + uVar10)" identifier = (cast_expression "(int *)((long)piVar30 + uVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar30 + uVar10)" ( (binary_expression "(long)piVar30 + uVar10" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) )))) ;) (expression_statement "uVar20 = local_88;" (assignment_expression "uVar20 = local_88" identifier = identifier) ;) (if_statement "if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }" if (parenthesized_expression "((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8))))" ( (binary_expression "(piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))" (parenthesized_expression "(piVar24 < local_c8)" ( (binary_expression "piVar24 < local_c8" identifier < identifier) )) || (parenthesized_expression "((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))" ( (parenthesized_expression "(uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8))" ( (comma_expression "uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)" (assignment_expression "uVar12 = 0" identifier = number_literal) , (binary_expression "(int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)" (binary_expression "(int *)((long)piVar24 - uVar10) < local_c8" (cast_expression "(int *)((long)piVar24 - uVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar24 - uVar10)" ( (binary_expression "(long)piVar24 - uVar10" (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) ))) < identifier) && (parenthesized_expression "(uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)" ( (comma_expression "uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8" (assignment_expression "uVar20 = iVar3 - (int)piVar30" identifier = (binary_expression "iVar3 - (int)piVar30" identifier - (cast_expression "(int)piVar30" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "uVar20 - 1 < 8" (binary_expression "uVar20 - 1" identifier - number_literal) < number_literal)) )))) )) ))) )) (compound_statement "{\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }" { (expression_statement "uVar12 = (*DAT_00159e20)(piVar30,uVar20);" (assignment_expression "uVar12 = (*DAT_00159e20)(piVar30,uVar20)" identifier = (call_expression "(*DAT_00159e20)(piVar30,uVar20)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30,uVar20)" ( identifier , identifier )))) ;) })) (expression_statement "pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"[%3u] 0x%lx\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"[%3u] 0x%lx\n",5)" identifier (argument_list "(0,"[%3u] 0x%lx\n",5)" ( number_literal , (string_literal ""[%3u] 0x%lx\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "uVar20 = (int)uVar25 + 1;" (assignment_expression "uVar20 = (int)uVar25 + 1" identifier = (binary_expression "(int)uVar25 + 1" (cast_expression "(int)uVar25" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "printf(pcVar11,uVar25,uVar12);" (call_expression "printf(pcVar11,uVar25,uVar12)" identifier (argument_list "(pcVar11,uVar25,uVar12)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar21 = (ulong)uVar20;" (assignment_expression "uVar21 = (ulong)uVar20" identifier = (cast_expression "(ulong)uVar20" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "piVar30 = piVar24;" (assignment_expression "piVar30 = piVar24" identifier = identifier) ;) }) while (parenthesized_expression "(uVar20 != uVar7)" ( (binary_expression "uVar20 != uVar7" identifier != identifier) )) ;) (expression_statement "piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));" (assignment_expression "piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1))" identifier = (cast_expression "(int *)((long)piVar29 + uVar10 * (uVar25 + 1))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar29 + uVar10 * (uVar25 + 1))" ( (binary_expression "(long)piVar29 + uVar10 * (uVar25 + 1)" (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "uVar10 * (uVar25 + 1)" identifier * (parenthesized_expression "(uVar25 + 1)" ( (binary_expression "uVar25 + 1" identifier + number_literal) )))) )))) ;) })) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "pcVar11 = (char *)dcgettext(0,"TU table:\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"TU table:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"TU table:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"TU table:\n",5)" identifier (argument_list "(0,"TU table:\n",5)" ( number_literal , (string_literal ""TU table:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier ))) ;) (if_statement "if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }" if (parenthesized_expression "(uVar8 != 0)" ( (binary_expression "uVar8 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }" { (expression_statement "uVar10 = (ulong)local_88;" (assignment_expression "uVar10 = (ulong)local_88" identifier = (cast_expression "(ulong)local_88" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" identifier = identifier) ;) (while_statement "while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }" { (expression_statement "piVar24 = (int *)((long)piVar30 + uVar10);" (assignment_expression "piVar24 = (int *)((long)piVar30 + uVar10)" identifier = (cast_expression "(int *)((long)piVar30 + uVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar30 + uVar10)" ( (binary_expression "(long)piVar30 + uVar10" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) )))) ;) (expression_statement "uVar7 = local_88;" (assignment_expression "uVar7 = local_88" identifier = identifier) ;) (if_statement "if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }" if (parenthesized_expression "((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8))))" ( (binary_expression "(piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))" (parenthesized_expression "(piVar24 < local_c8)" ( (binary_expression "piVar24 < local_c8" identifier < identifier) )) || (parenthesized_expression "((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))" ( (parenthesized_expression "(uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8))" ( (comma_expression "uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)" (assignment_expression "uVar12 = 0" identifier = number_literal) , (binary_expression "(int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)" (binary_expression "(int *)((long)piVar24 - uVar10) < local_c8" (cast_expression "(int *)((long)piVar24 - uVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar24 - uVar10)" ( (binary_expression "(long)piVar24 - uVar10" (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) ))) < identifier) && (parenthesized_expression "(uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)" ( (comma_expression "uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8" (assignment_expression "uVar7 = iVar3 - (int)piVar30" identifier = (binary_expression "iVar3 - (int)piVar30" identifier - (cast_expression "(int)piVar30" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "uVar7 - 1 < 8" (binary_expression "uVar7 - 1" identifier - number_literal) < number_literal)) )))) )) ))) )) (compound_statement "{\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }" { (expression_statement "uVar12 = (*DAT_00159e20)(piVar30,uVar7);" (assignment_expression "uVar12 = (*DAT_00159e20)(piVar30,uVar7)" identifier = (call_expression "(*DAT_00159e20)(piVar30,uVar7)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30,uVar7)" ( identifier , identifier )))) ;) })) (expression_statement "pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"[%3u] 0x%lx\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"[%3u] 0x%lx\n",5)" identifier (argument_list "(0,"[%3u] 0x%lx\n",5)" ( number_literal , (string_literal ""[%3u] 0x%lx\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11,uVar21,uVar12);" (call_expression "printf(pcVar11,uVar21,uVar12)" identifier (argument_list "(pcVar11,uVar21,uVar12)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar7 = (int)uVar21 + 1;" (assignment_expression "uVar7 = (int)uVar21 + 1" identifier = (binary_expression "(int)uVar21 + 1" (cast_expression "(int)uVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (if_statement "if (uVar7 == uVar8) break;" if (parenthesized_expression "(uVar7 == uVar8)" ( (binary_expression "uVar7 == uVar8" identifier == identifier) )) (break_statement "break;" break ;)) (expression_statement "uVar21 = (ulong)uVar7;" (assignment_expression "uVar21 = (ulong)uVar7" identifier = (cast_expression "(ulong)uVar7" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "piVar30 = piVar24;" (assignment_expression "piVar30 = piVar24" identifier = identifier) ;) })) (expression_statement "piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));" (assignment_expression "piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1))" identifier = (cast_expression "(int *)((long)piVar29 + uVar10 * (uVar21 + 1))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar29 + uVar10 * (uVar21 + 1))" ( (binary_expression "(long)piVar29 + uVar10 * (uVar21 + 1)" (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "uVar10 * (uVar21 + 1)" identifier * (parenthesized_expression "(uVar21 + 1)" ( (binary_expression "uVar21 + 1" identifier + number_literal) )))) )))) ;) })) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Foreign TU table:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Foreign TU table:\n",5)" identifier (argument_list "(0,"Foreign TU table:\n",5)" ( number_literal , (string_literal ""Foreign TU table:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier ))) ;) (if_statement "if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }" if (parenthesized_expression "((uint)local_98 != 0)" ( (binary_expression "(uint)local_98 != 0" (cast_expression "(uint)local_98" ( (type_descriptor "uint" type_identifier) ) identifier) != number_literal) )) (compound_statement "{\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }" { (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" identifier = identifier) ;) (do_statement "do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );" do (compound_statement "{\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          }" { (if_statement "if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }" if (parenthesized_expression "(piVar30 + 2 < local_c8)" ( (binary_expression "piVar30 + 2 < local_c8" (binary_expression "piVar30 + 2" identifier + number_literal) < identifier) )) (compound_statement "{\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }" { (expression_statement "lVar22 = 8;" (assignment_expression "lVar22 = 8" identifier = number_literal) ;) (labeled_statement "LAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);" statement_identifier : (expression_statement "uVar12 = (*DAT_00159e20)(piVar30,lVar22);" (assignment_expression "uVar12 = (*DAT_00159e20)(piVar30,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar30,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30,lVar22)" ( identifier , identifier )))) ;)) }) (else_clause "else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }" else (compound_statement "{\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }" { (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) (if_statement "if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;" if (parenthesized_expression "((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8))" ( (binary_expression "(piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)" (parenthesized_expression "(piVar30 < local_c8)" ( (binary_expression "piVar30 < local_c8" identifier < identifier) )) && (parenthesized_expression "(lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)" ( (comma_expression "lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8" (assignment_expression "lVar22 = (long)local_c8 - (long)piVar30" identifier = (binary_expression "(long)local_c8 - (long)piVar30" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) , (binary_expression "(int)lVar22 - 1U < 8" (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00118ee3;" goto statement_identifier ;)) }))) (expression_statement "pcVar11 = (char *)dcgettext(0,"[%3u] ",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"[%3u] ",5)" identifier = (cast_expression "(char *)dcgettext(0,"[%3u] ",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"[%3u] ",5)" identifier (argument_list "(0,"[%3u] ",5)" ( number_literal , (string_literal ""[%3u] "" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar11,uVar21);" (call_expression "printf(pcVar11,uVar21)" identifier (argument_list "(pcVar11,uVar21)" ( identifier , identifier ))) ;) (expression_statement "FUN_0010ee90(uVar12,8);" (call_expression "FUN_0010ee90(uVar12,8)" identifier (argument_list "(uVar12,8)" ( identifier , number_literal ))) ;) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "uVar7 = (int)uVar21 + 1;" (assignment_expression "uVar7 = (int)uVar21 + 1" identifier = (binary_expression "(int)uVar21 + 1" (cast_expression "(int)uVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (if_statement "if (uVar7 == (uint)local_98) goto LAB_00118eee;" if (parenthesized_expression "(uVar7 == (uint)local_98)" ( (binary_expression "uVar7 == (uint)local_98" identifier == (cast_expression "(uint)local_98" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_00118eee;" goto statement_identifier ;)) (expression_statement "uVar21 = (ulong)uVar7;" (assignment_expression "uVar21 = (ulong)uVar7" identifier = (cast_expression "(ulong)uVar7" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "piVar30 = piVar30 + 2;" (assignment_expression "piVar30 = piVar30 + 2" identifier = (binary_expression "piVar30 + 2" identifier + number_literal)) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })) (goto_statement "goto LAB_00118ef8;" goto statement_identifier ;) })) (if_statement "if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }" if (parenthesized_expression "((piVar30 < local_c8) && ((int)uVar21 - 1U < 8))" ( (binary_expression "(piVar30 < local_c8) && ((int)uVar21 - 1U < 8)" (parenthesized_expression "(piVar30 < local_c8)" ( (binary_expression "piVar30 < local_c8" identifier < identifier) )) && (parenthesized_expression "((int)uVar21 - 1U < 8)" ( (binary_expression "(int)uVar21 - 1U < 8" (binary_expression "(int)uVar21 - 1U" (cast_expression "(int)uVar21" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal) < number_literal) ))) )) (compound_statement "{\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }" { (expression_statement "uVar10 = uVar21 & 0xffffffff;" (assignment_expression "uVar10 = uVar21 & 0xffffffff" identifier = (binary_expression "uVar21 & 0xffffffff" identifier & number_literal)) ;) (goto_statement "goto LAB_00118af5;" goto statement_identifier ;) })) (expression_statement "pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Version %ld\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Version %ld\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Version %ld\n",5)" identifier (argument_list "(0,"Version %ld\n",5)" ( number_literal , (string_literal ""Version %ld\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11,0);" (call_expression "printf(pcVar11,0)" identifier (argument_list "(pcVar11,0)" ( identifier , number_literal ))) ;) (labeled_statement "LAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);" statement_identifier : (expression_statement "uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5)" identifier = (call_expression "dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5)" identifier (argument_list "(0,"Only DWARF version 5 .debug_names is currently supported.\n",5)" ( number_literal , (string_literal ""Only DWARF version 5 .debug_names is currently supported.\n"" " string_content escape_sequence ") , number_literal )))) ;)) (expression_statement "warn(uVar12);" (call_expression "warn(uVar12)" identifier (argument_list "(uVar12)" ( identifier ))) ;) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) }))) }) (else_clause "else {\n    uVar12 = 1;\n  }" else (compound_statement "{\n    uVar12 = 1;\n  }" { (expression_statement "uVar12 = 1;" (assignment_expression "uVar12 = 1" identifier = number_literal) ;) })))) (return_statement "return uVar12;" return identifier ;) (labeled_statement "LAB_00118eee:\n  piVar29 = piVar29 + uVar21 * 2 + 2;" statement_identifier : (expression_statement "piVar29 = piVar29 + uVar21 * 2 + 2;" (assignment_expression "piVar29 = piVar29 + uVar21 * 2 + 2" identifier = (binary_expression "piVar29 + uVar21 * 2 + 2" (binary_expression "piVar29 + uVar21 * 2" identifier + (binary_expression "uVar21 * 2" identifier * number_literal)) + number_literal)) ;)) (labeled_statement "LAB_00118ef8:\n  putc(10,stdout);" statement_identifier : (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;)) (expression_statement "puVar18 = (uint *)(local_90 + (long)piVar29);" (assignment_expression "puVar18 = (uint *)(local_90 + (long)piVar29)" identifier = (cast_expression "(uint *)(local_90 + (long)piVar29)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_90 + (long)piVar29)" ( (binary_expression "local_90 + (long)piVar29" identifier + (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) ;) (expression_statement "lVar22 = local_b0 + local_a8;" (assignment_expression "lVar22 = local_b0 + local_a8" identifier = (binary_expression "local_b0 + local_a8" identifier + identifier)) ;) (expression_statement "lVar27 = (long)puVar18 + local_b0 + lVar22;" (assignment_expression "lVar27 = (long)puVar18 + local_b0 + lVar22" identifier = (binary_expression "(long)puVar18 + local_b0 + lVar22" (binary_expression "(long)puVar18 + local_b0" (cast_expression "(long)puVar18" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + identifier)) ;) (expression_statement "piVar30 = (int *)(local_c0 + lVar27);" (assignment_expression "piVar30 = (int *)(local_c0 + lVar27)" identifier = (cast_expression "(int *)(local_c0 + lVar27)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_c0 + lVar27)" ( (binary_expression "local_c0 + lVar27" identifier + identifier) )))) ;) (if_statement "if (local_c8 < piVar30) {\n    lVar22 = *(long *)(param_1 + 0x20);\n    uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);\n    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);\n    return 0;\n  }" if (parenthesized_expression "(local_c8 < piVar30)" ( (binary_expression "local_c8 < piVar30" identifier < identifier) )) (compound_statement "{\n    lVar22 = *(long *)(param_1 + 0x20);\n    uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);\n    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);\n    return 0;\n  }" { (expression_statement "lVar22 = *(long *)(param_1 + 0x20);" (assignment_expression "lVar22 = *(long *)(param_1 + 0x20)" identifier = (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) ;) (expression_statement "uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5)" identifier = (call_expression "dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5)" identifier (argument_list "(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5)" ( number_literal , (string_literal ""Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);" (call_expression "warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22)" identifier (argument_list "(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22)" ( identifier , (binary_expression "(long)piVar30 - lVar22" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) , (binary_expression "(long)local_c8 - lVar22" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) , (binary_expression "(long)piVar2 - lVar22" (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) ))) ;) (return_statement "return 0;" return number_literal ;) })) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (if_statement "if (local_b8 != 0) {\n    uVar21 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }" if (parenthesized_expression "(local_b8 != 0)" ( (binary_expression "local_b8 != 0" identifier != number_literal) )) (compound_statement "{\n    uVar21 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }" { (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (expression_statement "piVar24 = piVar29 + local_b8;" (assignment_expression "piVar24 = piVar29 + local_b8" identifier = (binary_expression "piVar29 + local_b8" identifier + identifier)) ;) (do_statement "do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);" do (compound_statement "{\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    }" { (expression_statement "uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);" (assignment_expression "uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0)" identifier = (binary_expression "(uVar21 + 1) - (ulong)(*piVar29 == 0)" (parenthesized_expression "(uVar21 + 1)" ( (binary_expression "uVar21 + 1" identifier + number_literal) )) - (call_expression "(ulong)(*piVar29 == 0)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(*piVar29 == 0)" ( (binary_expression "*piVar29 == 0" (pointer_expression "*piVar29" * identifier) == number_literal) ))))) ;) (expression_statement "piVar29 = piVar29 + 1;" (assignment_expression "piVar29 = piVar29 + 1" identifier = (binary_expression "piVar29 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(piVar24 != piVar29)" ( (binary_expression "piVar24 != piVar29" identifier != identifier) )) ;) })) (expression_statement "uVar10 = 0;" (assignment_expression "uVar10 = 0" identifier = number_literal) ;) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;) (expression_statement "pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);" (assignment_expression "pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" identifier = (cast_expression "(char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" identifier (argument_list "(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" ( number_literal , (string_literal ""Used %zu of %lu bucket.\n"" " string_content escape_sequence ") , (string_literal ""Used %zu of %lu buckets.\n"" " string_content escape_sequence ") , identifier ))))) ;) (expression_statement "printf(pcVar11,uVar21,local_b8);" (call_expression "printf(pcVar11,uVar21,local_b8)" identifier (argument_list "(pcVar11,uVar21,local_b8)" ( identifier , identifier , identifier ))) ;) (if_statement "if (local_d0 != 0) {\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar10 = 0;\n    uVar7 = *puVar18;\n    puVar19 = puVar18;\n    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }\n    uVar21 = uVar21 + lVar26;\n  }" if (parenthesized_expression "(local_d0 != 0)" ( (binary_expression "local_d0 != 0" identifier != number_literal) )) (compound_statement "{\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar10 = 0;\n    uVar7 = *puVar18;\n    puVar19 = puVar18;\n    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }\n    uVar21 = uVar21 + lVar26;\n  }" { (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;) (expression_statement "uVar10 = 0;" (assignment_expression "uVar10 = 0" identifier = number_literal) ;) (expression_statement "uVar7 = *puVar18;" (assignment_expression "uVar7 = *puVar18" identifier = (pointer_expression "*puVar18" * identifier)) ;) (expression_statement "puVar19 = puVar18;" (assignment_expression "puVar19 = puVar18" identifier = identifier) ;) (while_statement "while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }" while (parenthesized_expression "(puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19)" ( (comma_expression "puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19" (assignment_expression "puVar19 = puVar19 + 1" identifier = (binary_expression "puVar19 + 1" identifier + number_literal)) , (binary_expression "puVar18 + local_d0 != puVar19" (binary_expression "puVar18 + local_d0" identifier + identifier) != identifier)) )) (compound_statement "{\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }" { (expression_statement "uVar8 = *puVar19;" (assignment_expression "uVar8 = *puVar19" identifier = (pointer_expression "*puVar19" * identifier)) ;) (if_statement "if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }" if (parenthesized_expression "(uVar7 % local_84 == uVar8 % local_84)" ( (binary_expression "uVar7 % local_84 == uVar8 % local_84" (binary_expression "uVar7 % local_84" identifier % identifier) == (binary_expression "uVar8 % local_84" identifier % identifier)) )) (compound_statement "{\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }" { (expression_statement "uVar25 = uVar25 + 1;" (assignment_expression "uVar25 = uVar25 + 1" identifier = (binary_expression "uVar25 + 1" identifier + number_literal)) ;) (expression_statement "lVar26 = lVar26 + 1;" (assignment_expression "lVar26 = lVar26 + 1" identifier = (binary_expression "lVar26 + 1" identifier + number_literal)) ;) (expression_statement "uVar7 = uVar8;" (assignment_expression "uVar7 = uVar8" identifier = identifier) ;) (if_statement "if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }" if (parenthesized_expression "(uVar10 < uVar25)" ( (binary_expression "uVar10 < uVar25" identifier < identifier) )) (compound_statement "{\n          uVar10 = uVar25;\n        }" { (expression_statement "uVar10 = uVar25;" (assignment_expression "uVar10 = uVar25" identifier = identifier) ;) })) }) (else_clause "else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }" else (compound_statement "{\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }" { (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) (expression_statement "uVar7 = uVar8;" (assignment_expression "uVar7 = uVar8" identifier = identifier) ;) }))) })) (expression_statement "uVar21 = uVar21 + lVar26;" (assignment_expression "uVar21 = uVar21 + lVar26" identifier = (binary_expression "uVar21 + lVar26" identifier + identifier)) ;) })) (expression_statement "pcVar11 = (char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5)" identifier (argument_list "(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5)" ( number_literal , (string_literal ""Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11,local_d0,lVar26,uVar10);" (call_expression "printf(pcVar11,local_d0,lVar26,uVar10)" identifier (argument_list "(pcVar11,local_d0,lVar26,uVar10)" ( identifier , identifier , identifier , identifier ))) ;) (if_statement "if (local_d0 != uVar21) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }" if (parenthesized_expression "(local_d0 != uVar21)" ( (binary_expression "local_d0 != uVar21" identifier != identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }" { comment (expression_statement "__assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");" (call_expression "__assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names")" identifier (argument_list "("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names")" ( (string_literal ""name_count == buckets_filled + hash_clash_count"" " string_content ") , (string_literal ""../../binutils/dwarf.c"" " string_content ") , number_literal , (string_literal ""display_debug_names"" " string_content ") ))) ;) })) (expression_statement "local_d0 = 0;" (assignment_expression "local_d0 = 0" identifier = number_literal) ;) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (expression_statement "__ptr = (long *)0x0;" (assignment_expression "__ptr = (long *)0x0" identifier = (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (while_statement "while( true ) {\n    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    if (lVar26 == 0) break;\n    if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar21) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    plVar17 = __ptr + uVar21 * 2;\n    if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }\nLAB_001190c6:\n    plVar17[1] = lVar27;\n    *plVar17 = lVar26;\n    uVar21 = uVar21 + 1;\n    FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    if (lVar26 == 0) break;\n    if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar21) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    plVar17 = __ptr + uVar21 * 2;\n    if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }\nLAB_001190c6:\n    plVar17[1] = lVar27;\n    *plVar17 = lVar26;\n    uVar21 = uVar21 + 1;\n    FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);\n  }" { (expression_statement "lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);" (assignment_expression "lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier = (call_expression "FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier (argument_list "(lVar27,local_3c,0,piVar30)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "lVar27 = lVar27 + (ulong)local_3c[0];" (assignment_expression "lVar27 = lVar27 + (ulong)local_3c[0]" identifier = (binary_expression "lVar27 + (ulong)local_3c[0]" identifier + (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ])))) ;) (if_statement "if (lVar26 == 0) break;" if (parenthesized_expression "(lVar26 == 0)" ( (binary_expression "lVar26 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (if_statement "if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }" if (parenthesized_expression "(uVar21 == local_d0)" ( (binary_expression "uVar21 == local_d0" identifier == identifier) )) (compound_statement "{\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }" { (expression_statement "local_d0 = uVar21 * 2;" (assignment_expression "local_d0 = uVar21 * 2" identifier = (binary_expression "uVar21 * 2" identifier * number_literal)) ;) (if_statement "if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }" if (parenthesized_expression "(local_d0 < 0x100)" ( (binary_expression "local_d0 < 0x100" identifier < number_literal) )) (compound_statement "{\n        local_d0 = 0x100;\n      }" { (expression_statement "local_d0 = 0x100;" (assignment_expression "local_d0 = 0x100" identifier = number_literal) ;) })) (expression_statement "__ptr = (long *)xrealloc(__ptr,local_d0 << 4);" (assignment_expression "__ptr = (long *)xrealloc(__ptr,local_d0 << 4)" identifier = (cast_expression "(long *)xrealloc(__ptr,local_d0 << 4)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (call_expression "xrealloc(__ptr,local_d0 << 4)" identifier (argument_list "(__ptr,local_d0 << 4)" ( identifier , (binary_expression "local_d0 << 4" identifier << number_literal) ))))) ;) })) (if_statement "if (local_d0 <= uVar21) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }" if (parenthesized_expression "(local_d0 <= uVar21)" ( (binary_expression "local_d0 <= uVar21" identifier <= identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }" { comment (expression_statement "__assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");" (call_expression "__assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names")" identifier (argument_list "("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names")" ( (string_literal ""abbrev_lookup_used < abbrev_lookup_allocated"" " string_content ") , (string_literal ""../../binutils/dwarf.c"" " string_content ") , number_literal , (string_literal ""display_debug_names"" " string_content ") ))) ;) })) (expression_statement "plVar17 = __ptr + uVar21 * 2;" (assignment_expression "plVar17 = __ptr + uVar21 * 2" identifier = (binary_expression "__ptr + uVar21 * 2" identifier + (binary_expression "uVar21 * 2" identifier * number_literal))) ;) (if_statement "if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }" if (parenthesized_expression "(__ptr < plVar17)" ( (binary_expression "__ptr < plVar17" identifier < identifier) )) (compound_statement "{\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }" { (expression_statement "lVar16 = *__ptr;" (assignment_expression "lVar16 = *__ptr" identifier = (pointer_expression "*__ptr" * identifier)) ;) (expression_statement "plVar15 = __ptr;" (assignment_expression "plVar15 = __ptr" identifier = identifier) ;) (while_statement "while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }" while (parenthesized_expression "(lVar26 != lVar16)" ( (binary_expression "lVar26 != lVar16" identifier != identifier) )) (compound_statement "{\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }" { (expression_statement "plVar15 = plVar15 + 2;" (assignment_expression "plVar15 = plVar15 + 2" identifier = (binary_expression "plVar15 + 2" identifier + number_literal)) ;) (if_statement "if (plVar17 <= plVar15) goto LAB_001190c6;" if (parenthesized_expression "(plVar17 <= plVar15)" ( (binary_expression "plVar17 <= plVar15" identifier <= identifier) )) (goto_statement "goto LAB_001190c6;" goto statement_identifier ;)) (expression_statement "lVar16 = *plVar15;" (assignment_expression "lVar16 = *plVar15" identifier = (pointer_expression "*plVar15" * identifier)) ;) })) (expression_statement "lVar16 = *(long *)(param_1 + 0x20);" (assignment_expression "lVar16 = *(long *)(param_1 + 0x20)" identifier = (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) ;) (expression_statement "uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" identifier = (call_expression "dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" identifier (argument_list "(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" ( number_literal , (string_literal ""Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,lVar26,(long)piVar2 - lVar16);" (call_expression "warn(uVar12,lVar26,(long)piVar2 - lVar16)" identifier (argument_list "(uVar12,lVar26,(long)piVar2 - lVar16)" ( identifier , identifier , (binary_expression "(long)piVar2 - lVar16" (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) ))) ;) })) (labeled_statement "LAB_001190c6:\n    plVar17[1] = lVar27;" statement_identifier : (expression_statement "plVar17[1] = lVar27;" (assignment_expression "plVar17[1] = lVar27" (subscript_expression "plVar17[1]" identifier [ number_literal ]) = identifier) ;)) (expression_statement "*plVar17 = lVar26;" (assignment_expression "*plVar17 = lVar26" (pointer_expression "*plVar17" * identifier) = identifier) ;) (expression_statement "uVar21 = uVar21 + 1;" (assignment_expression "uVar21 = uVar21 + 1" identifier = (binary_expression "uVar21 + 1" identifier + number_literal)) ;) (expression_statement "FUN_001114f0(lVar27,local_3c,0,piVar30);" (call_expression "FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier (argument_list "(lVar27,local_3c,0,piVar30)" ( identifier , identifier , number_literal , identifier ))) ;) (expression_statement "lVar27 = lVar27 + (ulong)local_3c[0];" (assignment_expression "lVar27 = lVar27 + (ulong)local_3c[0]" identifier = (binary_expression "lVar27 + (ulong)local_3c[0]" identifier + (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ])))) ;) (do_statement "do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);" do (compound_statement "{\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    }" { (expression_statement "lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);" (assignment_expression "lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier = (call_expression "FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier (argument_list "(lVar27,local_3c,0,piVar30)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "uVar10 = (ulong)local_3c[0];" (assignment_expression "uVar10 = (ulong)local_3c[0]" identifier = (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ]))) ;) (expression_statement "lVar16 = FUN_001114f0(lVar27 + uVar10);" (assignment_expression "lVar16 = FUN_001114f0(lVar27 + uVar10)" identifier = (call_expression "FUN_001114f0(lVar27 + uVar10)" identifier (argument_list "(lVar27 + uVar10)" ( (binary_expression "lVar27 + uVar10" identifier + identifier) )))) ;) (expression_statement "lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];" (assignment_expression "lVar27 = lVar27 + uVar10 + (ulong)local_3c[0]" identifier = (binary_expression "lVar27 + uVar10 + (ulong)local_3c[0]" (binary_expression "lVar27 + uVar10" identifier + identifier) + (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ])))) ;) }) while (parenthesized_expression "(lVar16 != 0 || lVar26 != 0)" ( (binary_expression "lVar16 != 0 || lVar26 != 0" (binary_expression "lVar16 != 0" identifier != number_literal) || (binary_expression "lVar26 != 0" identifier != number_literal)) )) ;) })) (expression_statement "pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\nSymbol table:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\nSymbol table:\n",5)" identifier (argument_list "(0,"\nSymbol table:\n",5)" ( number_literal , (string_literal ""\nSymbol table:\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier ))) ;) (if_statement "if ((uint)local_a0 != 0) {\n    local_90 = 0;\n    local_84 = 0;\n    uVar7 = (uint)local_a0 - 1;\n    do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }" if (parenthesized_expression "((uint)local_a0 != 0)" ( (binary_expression "(uint)local_a0 != 0" (cast_expression "(uint)local_a0" ( (type_descriptor "uint" type_identifier) ) identifier) != number_literal) )) (compound_statement "{\n    local_90 = 0;\n    local_84 = 0;\n    uVar7 = (uint)local_a0 - 1;\n    do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }" { (expression_statement "local_90 = 0;" (assignment_expression "local_90 = 0" identifier = number_literal) ;) (expression_statement "local_84 = 0;" (assignment_expression "local_84 = 0" identifier = number_literal) ;) (expression_statement "uVar7 = (uint)local_a0 - 1;" (assignment_expression "uVar7 = (uint)local_a0 - 1" identifier = (binary_expression "(uint)local_a0 - 1" (cast_expression "(uint)local_a0" ( (type_descriptor "uint" type_identifier) ) identifier) - number_literal)) ;) (do_statement "do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);" do (compound_statement "{\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    }" { (expression_statement "uVar10 = (ulong)local_84;" (assignment_expression "uVar10 = (ulong)local_84" identifier = (cast_expression "(ulong)local_84" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "lVar27 = uVar10 + local_88;" (assignment_expression "lVar27 = uVar10 + local_88" identifier = (binary_expression "uVar10 + local_88" identifier + identifier)) ;) (expression_statement "piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);" (assignment_expression "piVar29 = (int *)((long)puVar18 + uVar10 + local_a8)" identifier = (cast_expression "(int *)((long)puVar18 + uVar10 + local_a8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar18 + uVar10 + local_a8)" ( (binary_expression "(long)puVar18 + uVar10 + local_a8" (binary_expression "(long)puVar18 + uVar10" (cast_expression "(long)puVar18" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + identifier) )))) ;) (expression_statement "uVar8 = local_88;" (assignment_expression "uVar8 = local_88" identifier = identifier) ;) (if_statement "if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }" if (parenthesized_expression "(((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8))))" ( (binary_expression "((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))" (parenthesized_expression "((int *)((long)puVar18 + lVar27 + local_a8) < local_c8)" ( (binary_expression "(int *)((long)puVar18 + lVar27 + local_a8) < local_c8" (cast_expression "(int *)((long)puVar18 + lVar27 + local_a8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar18 + lVar27 + local_a8)" ( (binary_expression "(long)puVar18 + lVar27 + local_a8" (binary_expression "(long)puVar18 + lVar27" (cast_expression "(long)puVar18" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + identifier) ))) < identifier) )) || (parenthesized_expression "((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))" ( (parenthesized_expression "(uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8))" ( (comma_expression "uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" (assignment_expression "uVar12 = 0" identifier = number_literal) , (binary_expression "piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" (binary_expression "piVar29 < local_c8" identifier < identifier) && (parenthesized_expression "(uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" ( (comma_expression "uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8" (assignment_expression "uVar8 = iVar3 - (int)piVar29" identifier = (binary_expression "iVar3 - (int)piVar29" identifier - (cast_expression "(int)piVar29" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "uVar8 - 1 < 8" (binary_expression "uVar8 - 1" identifier - number_literal) < number_literal)) )))) )) ))) )) (compound_statement "{\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }" { (expression_statement "uVar12 = (*DAT_00159e20)(piVar29,uVar8);" (assignment_expression "uVar12 = (*DAT_00159e20)(piVar29,uVar8)" identifier = (call_expression "(*DAT_00159e20)(piVar29,uVar8)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar29,uVar8)" ( identifier , identifier )))) ;) })) (expression_statement "piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);" (assignment_expression "piVar29 = (int *)((long)puVar18 + uVar10 + lVar22)" identifier = (cast_expression "(int *)((long)puVar18 + uVar10 + lVar22)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar18 + uVar10 + lVar22)" ( (binary_expression "(long)puVar18 + uVar10 + lVar22" (binary_expression "(long)puVar18 + uVar10" (cast_expression "(long)puVar18" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + identifier) )))) ;) (expression_statement "uVar8 = local_88;" (assignment_expression "uVar8 = local_88" identifier = identifier) ;) (if_statement "if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }" if (parenthesized_expression "(((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         )" ( (binary_expression "((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))" (parenthesized_expression "((int *)((long)puVar18 + lVar27 + lVar22) < local_c8)" ( (binary_expression "(int *)((long)puVar18 + lVar27 + lVar22) < local_c8" (cast_expression "(int *)((long)puVar18 + lVar27 + lVar22)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar18 + lVar27 + lVar22)" ( (binary_expression "(long)puVar18 + lVar27 + lVar22" (binary_expression "(long)puVar18 + lVar27" (cast_expression "(long)puVar18" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + identifier) ))) < identifier) )) || (parenthesized_expression "((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))" ( (parenthesized_expression "(local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8))" ( (comma_expression "local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" (assignment_expression "local_98 = piVar30" identifier = identifier) , (binary_expression "piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" (binary_expression "piVar29 < local_c8" identifier < identifier) && (parenthesized_expression "(uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" ( (comma_expression "uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8" (assignment_expression "uVar8 = iVar3 - (int)piVar29" identifier = (binary_expression "iVar3 - (int)piVar29" identifier - (cast_expression "(int)piVar29" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "uVar8 - 1 < 8" (binary_expression "uVar8 - 1" identifier - number_literal) < number_literal)) )))) )) ))) )) (compound_statement "{\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }" { (expression_statement "lVar27 = (*DAT_00159e20)(piVar29,uVar8);" (assignment_expression "lVar27 = (*DAT_00159e20)(piVar29,uVar8)" identifier = (call_expression "(*DAT_00159e20)(piVar29,uVar8)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar29,uVar8)" ( identifier , identifier )))) ;) (expression_statement "local_98 = (int *)(lVar27 + (long)piVar30);" (assignment_expression "local_98 = (int *)(lVar27 + (long)piVar30)" identifier = (cast_expression "(int *)(lVar27 + (long)piVar30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar27 + (long)piVar30)" ( (binary_expression "lVar27 + (long)piVar30" identifier + (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) ;) })) (expression_statement "uVar12 = FUN_00110250(uVar12);" (assignment_expression "uVar12 = FUN_00110250(uVar12)" identifier = (call_expression "FUN_00110250(uVar12)" identifier (argument_list "(uVar12)" ( identifier )))) ;) (expression_statement "printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);" (call_expression "printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12)" identifier (argument_list "("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12)" ( (string_literal ""[%3u] #%08x %s:"" " string_content ") , (binary_expression "local_90 & 0xffffffff" identifier & number_literal) , (cast_expression "(ulong)puVar18[local_90]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar18[local_90]" identifier [ identifier ])) , identifier ))) ;) (expression_statement "uVar8 = 0xfffffffe;" (assignment_expression "uVar8 = 0xfffffffe" identifier = number_literal) ;) (expression_statement "local_a0 = -1;" (assignment_expression "local_a0 = -1" identifier = number_literal) ;) (expression_statement "piVar29 = local_98;" (assignment_expression "piVar29 = local_98" identifier = identifier) ;) (while_statement "while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }" { (while_statement "while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }" while (parenthesized_expression "(lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff)" ( (comma_expression "lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff" (assignment_expression "lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8)" identifier = (call_expression "FUN_001114f0(piVar29,local_3c,0,local_c8)" identifier (argument_list "(piVar29,local_3c,0,local_c8)" ( identifier , identifier , number_literal , identifier )))) , (binary_expression "uVar8 == 0xffffffff" identifier == number_literal)) )) (compound_statement "{\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }" { (expression_statement "piVar29 = local_98;" (assignment_expression "piVar29 = local_98" identifier = identifier) ;) (expression_statement "local_a0 = lVar27;" (assignment_expression "local_a0 = lVar27" identifier = identifier) ;) (expression_statement "uVar8 = 0;" (assignment_expression "uVar8 = 0" identifier = number_literal) ;) })) (if_statement "if (lVar27 == 0) goto LAB_001193b3;" if (parenthesized_expression "(lVar27 == 0)" ( (binary_expression "lVar27 == 0" identifier == number_literal) )) (goto_statement "goto LAB_001193b3;" goto statement_identifier ;)) (expression_statement "uVar10 = (ulong)local_3c[0];" (assignment_expression "uVar10 = (ulong)local_3c[0]" identifier = (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ]))) ;) (if_statement "if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }" if (parenthesized_expression "(-1 < (int)uVar8)" ( (binary_expression "-1 < (int)uVar8" number_literal < (cast_expression "(int)uVar8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }" { (if_statement "if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }" if (parenthesized_expression "((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0))" ( (binary_expression "(uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)" (parenthesized_expression "(uVar8 != 0)" ( (binary_expression "uVar8 != 0" identifier != number_literal) )) || (parenthesized_expression "(puVar23 = &DAT_0013d6b7, local_a0 != 0)" ( (comma_expression "puVar23 = &DAT_0013d6b7, local_a0 != 0" (assignment_expression "puVar23 = &DAT_0013d6b7" identifier = (pointer_expression "&DAT_0013d6b7" & identifier)) , (binary_expression "local_a0 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n            puVar23 = &DAT_00142aab;\n          }" { (expression_statement "puVar23 = &DAT_00142aab;" (assignment_expression "puVar23 = &DAT_00142aab" identifier = (pointer_expression "&DAT_00142aab" & identifier)) ;) })) (expression_statement "printf("%s<%lu>",puVar23,lVar27);" (call_expression "printf("%s<%lu>",puVar23,lVar27)" identifier (argument_list "("%s<%lu>",puVar23,lVar27)" ( (string_literal ""%s<%lu>"" " string_content ") , identifier , identifier ))) ;) })) (if_statement "if (__ptr + uVar21 * 2 <= __ptr) break;" if (parenthesized_expression "(__ptr + uVar21 * 2 <= __ptr)" ( (binary_expression "__ptr + uVar21 * 2 <= __ptr" (binary_expression "__ptr + uVar21 * 2" identifier + (binary_expression "uVar21 * 2" identifier * number_literal)) <= identifier) )) (break_statement "break;" break ;)) (expression_statement "lVar26 = *__ptr;" (assignment_expression "lVar26 = *__ptr" identifier = (pointer_expression "*__ptr" * identifier)) ;) (expression_statement "plVar17 = __ptr;" (assignment_expression "plVar17 = __ptr" identifier = identifier) ;) (while_statement "while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }" while (parenthesized_expression "(lVar27 != lVar26)" ( (binary_expression "lVar27 != lVar26" identifier != identifier) )) (compound_statement "{\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }" { (expression_statement "plVar17 = plVar17 + 2;" (assignment_expression "plVar17 = plVar17 + 2" identifier = (binary_expression "plVar17 + 2" identifier + number_literal)) ;) (if_statement "if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;" if (parenthesized_expression "(__ptr + uVar21 * 2 <= plVar17)" ( (binary_expression "__ptr + uVar21 * 2 <= plVar17" (binary_expression "__ptr + uVar21 * 2" identifier + (binary_expression "uVar21 * 2" identifier * number_literal)) <= identifier) )) (goto_statement "goto LAB_00119382;" goto statement_identifier ;)) (expression_statement "lVar26 = *plVar17;" (assignment_expression "lVar26 = *plVar17" identifier = (pointer_expression "*plVar17" * identifier)) ;) })) (expression_statement "lVar27 = plVar17[1];" (assignment_expression "lVar27 = plVar17[1]" identifier = (subscript_expression "plVar17[1]" identifier [ number_literal ])) ;) (expression_statement "uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);" (assignment_expression "uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier = (call_expression "FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier (argument_list "(lVar27,local_3c,0,piVar30)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "lVar27 = lVar27 + (ulong)local_3c[0];" (assignment_expression "lVar27 = lVar27 + (ulong)local_3c[0]" identifier = (binary_expression "lVar27 + (ulong)local_3c[0]" identifier + (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ])))) ;) (if_statement "if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }" if (parenthesized_expression "(-1 < (int)uVar8)" ( (binary_expression "-1 < (int)uVar8" number_literal < (cast_expression "(int)uVar8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }" { (expression_statement "uVar12 = FUN_001103f0(uVar12);" (assignment_expression "uVar12 = FUN_001103f0(uVar12)" identifier = (call_expression "FUN_001103f0(uVar12)" identifier (argument_list "(uVar12)" ( identifier )))) ;) (expression_statement "printf(" %s",uVar12);" (call_expression "printf(" %s",uVar12)" identifier (argument_list "(" %s",uVar12)" ( (string_literal "" %s"" " string_content ") , identifier ))) ;) })) (expression_statement "piVar29 = (int *)((long)piVar29 + uVar10);" (assignment_expression "piVar29 = (int *)((long)piVar29 + uVar10)" identifier = (cast_expression "(int *)((long)piVar29 + uVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar29 + uVar10)" ( (binary_expression "(long)piVar29 + uVar10" (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) )))) ;) (while_statement "while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }" { (expression_statement "uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);" (assignment_expression "uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier = (call_expression "FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier (argument_list "(lVar27,local_3c,0,piVar30)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "uVar25 = (ulong)local_3c[0];" (assignment_expression "uVar25 = (ulong)local_3c[0]" identifier = (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ]))) ;) (expression_statement "lVar26 = FUN_001114f0(lVar27 + uVar25);" (assignment_expression "lVar26 = FUN_001114f0(lVar27 + uVar25)" identifier = (call_expression "FUN_001114f0(lVar27 + uVar25)" identifier (argument_list "(lVar27 + uVar25)" ( (binary_expression "lVar27 + uVar25" identifier + identifier) )))) ;) (expression_statement "lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];" (assignment_expression "lVar27 = lVar27 + uVar25 + (ulong)local_3c[0]" identifier = (binary_expression "lVar27 + uVar25 + (ulong)local_3c[0]" (binary_expression "lVar27 + uVar25" identifier + identifier) + (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ])))) ;) (if_statement "if (lVar26 == 0 && uVar10 == 0) break;" if (parenthesized_expression "(lVar26 == 0 && uVar10 == 0)" ( (binary_expression "lVar26 == 0 && uVar10 == 0" (binary_expression "lVar26 == 0" identifier == number_literal) && (binary_expression "uVar10 == 0" identifier == number_literal)) )) (break_statement "break;" break ;)) (if_statement "if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }" if (parenthesized_expression "(-1 < (int)uVar8)" ( (binary_expression "-1 < (int)uVar8" number_literal < (cast_expression "(int)uVar8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }" { (expression_statement "puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);" (assignment_expression "puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff)" identifier = (cast_expression "(undefined *)FUN_0013b9f0(uVar10 & 0xffffffff)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0013b9f0(uVar10 & 0xffffffff)" identifier (argument_list "(uVar10 & 0xffffffff)" ( (binary_expression "uVar10 & 0xffffffff" identifier & number_literal) ))))) ;) (if_statement "if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }" if (parenthesized_expression "(puVar23 == (undefined *)0x0)" ( (binary_expression "puVar23 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }" { (expression_statement "pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5)" identifier = (cast_expression "(char *)dcgettext(0,"Unknown IDX value: %lx",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Unknown IDX value: %lx",5)" identifier (argument_list "(0,"Unknown IDX value: %lx",5)" ( number_literal , (string_literal ""Unknown IDX value: %lx"" " string_content ") , number_literal ))))) ;) (expression_statement "snprintf(&DAT_001574a0,100,pcVar11,uVar10);" (call_expression "snprintf(&DAT_001574a0,100,pcVar11,uVar10)" identifier (argument_list "(&DAT_001574a0,100,pcVar11,uVar10)" ( (pointer_expression "&DAT_001574a0" & identifier) , number_literal , identifier , identifier ))) ;) (expression_statement "puVar23 = &DAT_001574a0;" (assignment_expression "puVar23 = &DAT_001574a0" identifier = (pointer_expression "&DAT_001574a0" & identifier)) ;) })) (expression_statement "printf(" %s",puVar23);" (call_expression "printf(" %s",puVar23)" identifier (argument_list "(" %s",puVar23)" ( (string_literal "" %s"" " string_content ") , identifier ))) ;) })) (expression_statement "piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);" (assignment_expression "piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d)" identifier = (cast_expression "(int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d)" identifier (argument_list "(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d)" ( number_literal , identifier , number_literal , identifier , identifier , number_literal , number_literal , (cast_expression "(ulong)local_88" ( (type_descriptor "ulong" type_identifier) ) identifier) , number_literal , number_literal , (binary_expression "uVar8 >> 0x1f" identifier >> number_literal) , number_literal , number_literal , number_literal ))))) ;) })) (expression_statement "uVar8 = uVar8 + 1;" (assignment_expression "uVar8 = uVar8 + 1" identifier = (binary_expression "uVar8 + 1" identifier + number_literal)) ;) })) (labeled_statement "LAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);" statement_identifier : (expression_statement "lVar26 = *(long *)(param_1 + 0x20);" (assignment_expression "lVar26 = *(long *)(param_1 + 0x20)" identifier = (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) ;)) (expression_statement "uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" identifier = (call_expression "dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" identifier (argument_list "(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" ( number_literal , (string_literal ""Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,lVar27,(long)piVar2 - lVar26);" (call_expression "warn(uVar12,lVar27,(long)piVar2 - lVar26)" identifier (argument_list "(uVar12,lVar27,(long)piVar2 - lVar26)" ( identifier , identifier , (binary_expression "(long)piVar2 - lVar26" (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) ))) ;) (labeled_statement "LAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }" statement_identifier : (if_statement "if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }" if (parenthesized_expression "((int)uVar8 < 1)" ( (binary_expression "(int)uVar8 < 1" (cast_expression "(int)uVar8" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }" { (expression_statement "pcVar11 = (char *)dcgettext(0," <no entries>",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0," <no entries>",5)" identifier = (cast_expression "(char *)dcgettext(0," <no entries>",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," <no entries>",5)" identifier (argument_list "(0," <no entries>",5)" ( number_literal , (string_literal "" <no entries>"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier ))) ;) }))) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "local_84 = local_84 + local_88;" (assignment_expression "local_84 = local_84 + local_88" identifier = (binary_expression "local_84 + local_88" identifier + identifier)) ;) (expression_statement "bVar31 = local_90 != uVar7;" (assignment_expression "bVar31 = local_90 != uVar7" identifier = (binary_expression "local_90 != uVar7" identifier != identifier)) ;) (expression_statement "local_90 = local_90 + 1;" (assignment_expression "local_90 = local_90 + 1" identifier = (binary_expression "local_90 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar31)" ( identifier )) ;) })) (expression_statement "free(__ptr);" (call_expression "free(__ptr)" identifier (argument_list "(__ptr)" ( identifier ))) ;) (expression_statement "piVar2 = local_c8;" (assignment_expression "piVar2 = local_c8" identifier = identifier) ;) (goto_statement "goto joined_r0x0011898e;" goto statement_identifier ;) })))
(translation_unit "int display_debug_names(dwarf_section *section,void *file)\n\n{\n  int *piVar1;\n  int *piVar2;\n  uchar *puVar3;\n  long lVar4;\n  uint uVar5;\n  ulong uVar6;\n  char *pcVar7;\n  ulong uVar8;\n  char *pcVar9;\n  char *message;\n  elf_vma eVar10;\n  dwarf_vma dVar11;\n  dwarf_vma *pdVar12;\n  dwarf_vma dVar13;\n  dwarf_vma *__ptr;\n  dwarf_vma *pdVar14;\n  undefined1 *puVar15;\n  elf_vma eVar16;\n  uint *puVar17;\n  dwarf_section *in_RDX;\n  uint uVar18;\n  int iVar19;\n  int iVar20;\n  int iVar21;\n  undefined *puVar22;\n  uint *puVar23;\n  int *piVar24;\n  ulong uVar25;\n  long lVar26;\n  uchar *puVar27;\n  int *piVar28;\n  int *piVar29;\n  int *piVar30;\n  bool bVar31;\n  ulong local_d0;\n  int *local_c8;\n  ulong local_c0;\n  ulong local_b8;\n  ulong local_b0;\n  long local_a8;\n  dwarf_vma local_a0;\n  int *local_98;\n  ulong local_90;\n  uint local_88;\n  uint local_84;\n  uint local_70;\n  uint bytes_read;\n  \n  piVar2 = (int *)section->start;\n  piVar28 = (int *)((long)piVar2 + section->size);\n  introduce((dwarf_section *)section->name,(int)section + 0x18,in_RDX);\n  load_debug_section_with_follow(str,file);\njoined_r0x0011898e:\n  if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      iVar19 = 4;\nLAB_00118a58:\n      eVar10 = (*byte_get)((uchar *)piVar2,iVar19);\n      local_88 = 4;\n      if (eVar10 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          iVar19 = 8;\n        }\n        else if ((piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + eVar10);\n      uVar8 = (long)piVar30 - (long)section->start;\n      uVar6 = uVar8 + eVar10;\n      if (!CARRY8(uVar8,eVar10)) goto LAB_001189d9;\nLAB_00118a9b:\n      pcVar9 = dwarf_vmatoa_1("x",eVar10,0);\n      pcVar7 = section->name;\n      puVar27 = section->start;\n      message = (char *)dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(message,pcVar7,(long)piVar2 - (long)puVar27,pcVar9);\n      iVar19 = 0;\n    }\n    else {\n      iVar19 = (int)piVar28 - (int)piVar2;\n      if (iVar19 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      eVar10 = 0;\n      uVar6 = (long)piVar30 - (long)section->start;\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (section->size < uVar6) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      iVar19 = (int)eVar10;\n      if (piVar29 < local_c8) {\n        iVar20 = 2;\nLAB_00118af5:\n        eVar10 = (*byte_get)((uchar *)piVar30,iVar20);\n        pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar7,eVar10 & 0xffff);\n        if ((short)eVar10 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        iVar20 = (int)local_c8;\n        if (piVar24 < local_c8) {\n          iVar21 = 2;\nLAB_00119876:\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar21);\n          if ((short)eVar10 != 0) {\n            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;\n            warn(pcVar7,eVar10 & 0xffff);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          local_70 = (uint)eVar10;\n          if (local_70 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(pcVar7);\n          local_70 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        if (piVar29 < local_c8) {\n          iVar19 = 4;\nLAB_00119825:\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          uVar5 = (uint)eVar10;\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_98._0_4_ = (uint)eVar10;\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            local_a0._0_4_ = iVar19;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = local_c0 & 0xffffffff;\n            iVar19 = iVar20 - ((int)piVar30 + 0x1c);\n            if (7 < iVar19 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19);\n          iVar19 = (int)eVar10;\n          if ((eVar10 & 3) != 0) {\n            pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);\n            iVar19 = (-iVar19 & 3U) + iVar19;\n            warn(pcVar7,eVar10 & 0xffffffff);\n          }\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          if (iVar19 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n          goto LAB_00119825;\n          uVar5 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          iVar19 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);\n          local_84 = (uint)eVar10;\n          local_b8 = eVar10 & 0xffffffff;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar7);\n        if (local_70 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar6;\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar18 = (int)uVar25 + 1;\n            printf(pcVar7,uVar25,eVar10);\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          } while (uVar18 != local_70);\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar7);\n        if (uVar5 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar7,uVar6,eVar10);\n            uVar18 = (int)uVar6 + 1;\n            if (uVar18 == uVar5) break;\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar7);\n        if ((uint)local_98 != 0) {\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar7,uVar6);\n            print_dwarf_vma(eVar10,8);\n            putc(10,stdout);\n            uVar5 = (int)uVar6 + 1;\n            if (uVar5 == (uint)local_98) goto LAB_00118eee;\n            uVar6 = (ulong)uVar5;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && (iVar20 = iVar19, iVar19 - 1U < 8)) goto LAB_00118af5;\n      pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar7,0);\nLAB_00118a22:\n      pcVar7 = (char *)dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(pcVar7);\n      iVar19 = 0;\n    }\n  }\n  else {\n    iVar19 = 1;\n  }\n  return iVar19;\nLAB_00118eee:\n  piVar29 = piVar29 + uVar6 * 2 + 2;\nLAB_00118ef8:\n  putc(10,stdout);\n  puVar17 = (uint *)(local_90 + (long)piVar29);\n  lVar4 = local_b0 + local_a8;\n  puVar27 = (uchar *)((long)puVar17 + local_b0 + lVar4);\n  piVar30 = (int *)(puVar27 + local_c0);\n  if (local_c8 < piVar30) {\n    puVar27 = section->start;\n    pcVar7 = (char *)dcgettext(0,\n                               "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                               ,5);\n    warn(pcVar7,(long)piVar30 - (long)puVar27,(long)local_c8 - (long)puVar27,\n         (long)piVar2 - (long)puVar27);\n    return 0;\n  }\n  uVar6 = 0;\n  if (local_b8 != 0) {\n    uVar6 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar6 = (uVar6 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }\n  uVar8 = 0;\n  lVar26 = 0;\n  pcVar7 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);\n  printf(pcVar7,uVar6,local_b8);\n  if (local_d0 != 0) {\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar8 = 0;\n    uVar5 = *puVar17;\n    puVar23 = puVar17;\n    while (puVar23 = puVar23 + 1, puVar17 + local_d0 != puVar23) {\n      uVar18 = *puVar23;\n      if (uVar5 % local_84 == uVar18 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar5 = uVar18;\n        if (uVar8 < uVar25) {\n          uVar8 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar5 = uVar18;\n      }\n    }\n    uVar6 = uVar6 + lVar26;\n  }\n  pcVar7 = (char *)dcgettext(0,\n                             "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                             ,5);\n  printf(pcVar7,local_d0,lVar26,uVar8);\n  if (local_d0 != uVar6) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }\n  local_d0 = 0;\n  uVar6 = 0;\n  __ptr = (dwarf_vma *)0x0;\n  while( true ) {\n    dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n    puVar27 = puVar27 + bytes_read;\n    if (dVar11 == 0) break;\n    if (uVar6 == local_d0) {\n      local_d0 = uVar6 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (dwarf_vma *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar6) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    pdVar14 = __ptr + uVar6 * 2;\n    if (__ptr < pdVar14) {\n      dVar13 = *__ptr;\n      pdVar12 = __ptr;\n      while (dVar11 != dVar13) {\n        pdVar12 = pdVar12 + 2;\n        if (pdVar14 <= pdVar12) goto LAB_001190c6;\n        dVar13 = *pdVar12;\n      }\n      puVar3 = section->start;\n      pcVar7 = (char *)dcgettext(0,\n                                 "Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);\n      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar3);\n    }\nLAB_001190c6:\n    pdVar14[1] = (dwarf_vma)puVar27;\n    *pdVar14 = dVar11;\n    uVar6 = uVar6 + 1;\n    read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n    puVar27 = puVar27 + bytes_read;\n    do {\n      puVar23 = &bytes_read;\n      dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n      uVar8 = (ulong)bytes_read;\n      dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n      puVar27 = puVar27 + uVar8 + bytes_read;\n    } while (dVar13 != 0 || dVar11 != 0);\n  }\n  pcVar7 = (char *)dcgettext(0,"\nSymbol table:\n",5);\n  printf(pcVar7);\n  if ((int)local_a0 != 0) {\n    local_90 = 0;\n    local_84 = 0;\n    uVar5 = (int)local_a0 - 1;\n    do {\n      uVar8 = (ulong)local_84;\n      lVar26 = uVar8 + local_88;\n      piVar29 = (int *)((long)puVar17 + uVar8 + local_a8);\n      uVar18 = local_88;\n      if (((int *)((long)puVar17 + lVar26 + local_a8) < local_c8) ||\n         ((eVar10 = 0, piVar29 < local_c8 && (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar10 = (*byte_get)((uchar *)piVar29,uVar18);\n      }\n      piVar29 = (int *)((long)puVar17 + uVar8 + lVar4);\n      uVar18 = local_88;\n      if (((int *)((long)puVar17 + lVar26 + lVar4) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 &&\n          (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar16 = (*byte_get)((uchar *)piVar29,uVar18);\n        local_98 = (int *)(eVar16 + (long)piVar30);\n      }\n      puVar27 = fetch_indirect_string(eVar10);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar17[local_90],puVar27);\n      uVar18 = 0xfffffffe;\n      local_a0 = 0xffffffffffffffff;\n      piVar29 = local_98;\n      while( true ) {\n        while (dVar11 = read_leb128((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8),\n              uVar18 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = dVar11;\n          uVar18 = 0;\n        }\n        if (dVar11 == 0) goto LAB_001193b3;\n        uVar8 = (ulong)bytes_read;\n        if (-1 < (int)uVar18) {\n          if ((uVar18 != 0) || (puVar22 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar22 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar22,dVar11);\n        }\n        if (__ptr + uVar6 * 2 <= __ptr) break;\n        dVar13 = *__ptr;\n        pdVar14 = __ptr;\n        while (dVar11 != dVar13) {\n          pdVar14 = pdVar14 + 2;\n          if (__ptr + uVar6 * 2 <= pdVar14) goto LAB_00119382;\n          dVar13 = *pdVar14;\n        }\n        puVar27 = (uchar *)pdVar14[1];\n        dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n        puVar27 = puVar27 + bytes_read;\n        if (-1 < (int)uVar18) {\n          pcVar7 = get_TAG_name(dVar11);\n          printf(" %s",pcVar7);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar8);\n        while( true ) {\n          puVar23 = &bytes_read;\n          dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n          uVar8 = (ulong)bytes_read;\n          dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n          puVar27 = puVar27 + uVar8 + bytes_read;\n          if (dVar13 == 0 && dVar11 == 0) break;\n          if (-1 < (int)uVar18) {\n            puVar15 = get_DW_IDX_name((uint)dVar11);\n            if (puVar15 == (char *)0x0) {\n              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(buffer_10768,100,pcVar7,dVar11);\n              puVar15 = buffer_10768;\n            }\n            printf(" %s",puVar15);\n          }\n          piVar29 = (int *)read_and_display_attr_value\n                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=');\n        }\n        uVar18 = uVar18 + 1;\n      }\nLAB_00119382:\n      puVar27 = section->start;\n      pcVar7 = (char *)dcgettext(0,\n                                 "Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);\n      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar27);\nLAB_001193b3:\n      if ((int)uVar18 < 1) {\n        pcVar7 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar7);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar5;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }\n  free(__ptr);\n  piVar2 = local_c8;\n  goto joined_r0x0011898e;\n}\n\n" (function_definition "int display_debug_names(dwarf_section *section,void *file)\n\n{\n  int *piVar1;\n  int *piVar2;\n  uchar *puVar3;\n  long lVar4;\n  uint uVar5;\n  ulong uVar6;\n  char *pcVar7;\n  ulong uVar8;\n  char *pcVar9;\n  char *message;\n  elf_vma eVar10;\n  dwarf_vma dVar11;\n  dwarf_vma *pdVar12;\n  dwarf_vma dVar13;\n  dwarf_vma *__ptr;\n  dwarf_vma *pdVar14;\n  undefined1 *puVar15;\n  elf_vma eVar16;\n  uint *puVar17;\n  dwarf_section *in_RDX;\n  uint uVar18;\n  int iVar19;\n  int iVar20;\n  int iVar21;\n  undefined *puVar22;\n  uint *puVar23;\n  int *piVar24;\n  ulong uVar25;\n  long lVar26;\n  uchar *puVar27;\n  int *piVar28;\n  int *piVar29;\n  int *piVar30;\n  bool bVar31;\n  ulong local_d0;\n  int *local_c8;\n  ulong local_c0;\n  ulong local_b8;\n  ulong local_b0;\n  long local_a8;\n  dwarf_vma local_a0;\n  int *local_98;\n  ulong local_90;\n  uint local_88;\n  uint local_84;\n  uint local_70;\n  uint bytes_read;\n  \n  piVar2 = (int *)section->start;\n  piVar28 = (int *)((long)piVar2 + section->size);\n  introduce((dwarf_section *)section->name,(int)section + 0x18,in_RDX);\n  load_debug_section_with_follow(str,file);\njoined_r0x0011898e:\n  if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      iVar19 = 4;\nLAB_00118a58:\n      eVar10 = (*byte_get)((uchar *)piVar2,iVar19);\n      local_88 = 4;\n      if (eVar10 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          iVar19 = 8;\n        }\n        else if ((piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + eVar10);\n      uVar8 = (long)piVar30 - (long)section->start;\n      uVar6 = uVar8 + eVar10;\n      if (!CARRY8(uVar8,eVar10)) goto LAB_001189d9;\nLAB_00118a9b:\n      pcVar9 = dwarf_vmatoa_1("x",eVar10,0);\n      pcVar7 = section->name;\n      puVar27 = section->start;\n      message = (char *)dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(message,pcVar7,(long)piVar2 - (long)puVar27,pcVar9);\n      iVar19 = 0;\n    }\n    else {\n      iVar19 = (int)piVar28 - (int)piVar2;\n      if (iVar19 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      eVar10 = 0;\n      uVar6 = (long)piVar30 - (long)section->start;\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (section->size < uVar6) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      iVar19 = (int)eVar10;\n      if (piVar29 < local_c8) {\n        iVar20 = 2;\nLAB_00118af5:\n        eVar10 = (*byte_get)((uchar *)piVar30,iVar20);\n        pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar7,eVar10 & 0xffff);\n        if ((short)eVar10 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        iVar20 = (int)local_c8;\n        if (piVar24 < local_c8) {\n          iVar21 = 2;\nLAB_00119876:\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar21);\n          if ((short)eVar10 != 0) {\n            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;\n            warn(pcVar7,eVar10 & 0xffff);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          local_70 = (uint)eVar10;\n          if (local_70 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(pcVar7);\n          local_70 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        if (piVar29 < local_c8) {\n          iVar19 = 4;\nLAB_00119825:\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          uVar5 = (uint)eVar10;\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_98._0_4_ = (uint)eVar10;\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            local_a0._0_4_ = iVar19;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = local_c0 & 0xffffffff;\n            iVar19 = iVar20 - ((int)piVar30 + 0x1c);\n            if (7 < iVar19 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19);\n          iVar19 = (int)eVar10;\n          if ((eVar10 & 3) != 0) {\n            pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);\n            iVar19 = (-iVar19 & 3U) + iVar19;\n            warn(pcVar7,eVar10 & 0xffffffff);\n          }\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          if (iVar19 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n          goto LAB_00119825;\n          uVar5 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          iVar19 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);\n          local_84 = (uint)eVar10;\n          local_b8 = eVar10 & 0xffffffff;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar7);\n        if (local_70 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar6;\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar18 = (int)uVar25 + 1;\n            printf(pcVar7,uVar25,eVar10);\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          } while (uVar18 != local_70);\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar7);\n        if (uVar5 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar7,uVar6,eVar10);\n            uVar18 = (int)uVar6 + 1;\n            if (uVar18 == uVar5) break;\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar7);\n        if ((uint)local_98 != 0) {\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar7,uVar6);\n            print_dwarf_vma(eVar10,8);\n            putc(10,stdout);\n            uVar5 = (int)uVar6 + 1;\n            if (uVar5 == (uint)local_98) goto LAB_00118eee;\n            uVar6 = (ulong)uVar5;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && (iVar20 = iVar19, iVar19 - 1U < 8)) goto LAB_00118af5;\n      pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar7,0);\nLAB_00118a22:\n      pcVar7 = (char *)dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(pcVar7);\n      iVar19 = 0;\n    }\n  }\n  else {\n    iVar19 = 1;\n  }\n  return iVar19;\nLAB_00118eee:\n  piVar29 = piVar29 + uVar6 * 2 + 2;\nLAB_00118ef8:\n  putc(10,stdout);\n  puVar17 = (uint *)(local_90 + (long)piVar29);\n  lVar4 = local_b0 + local_a8;\n  puVar27 = (uchar *)((long)puVar17 + local_b0 + lVar4);\n  piVar30 = (int *)(puVar27 + local_c0);\n  if (local_c8 < piVar30) {\n    puVar27 = section->start;\n    pcVar7 = (char *)dcgettext(0,\n                               "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                               ,5);\n    warn(pcVar7,(long)piVar30 - (long)puVar27,(long)local_c8 - (long)puVar27,\n         (long)piVar2 - (long)puVar27);\n    return 0;\n  }\n  uVar6 = 0;\n  if (local_b8 != 0) {\n    uVar6 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar6 = (uVar6 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }\n  uVar8 = 0;\n  lVar26 = 0;\n  pcVar7 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);\n  printf(pcVar7,uVar6,local_b8);\n  if (local_d0 != 0) {\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar8 = 0;\n    uVar5 = *puVar17;\n    puVar23 = puVar17;\n    while (puVar23 = puVar23 + 1, puVar17 + local_d0 != puVar23) {\n      uVar18 = *puVar23;\n      if (uVar5 % local_84 == uVar18 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar5 = uVar18;\n        if (uVar8 < uVar25) {\n          uVar8 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar5 = uVar18;\n      }\n    }\n    uVar6 = uVar6 + lVar26;\n  }\n  pcVar7 = (char *)dcgettext(0,\n                             "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                             ,5);\n  printf(pcVar7,local_d0,lVar26,uVar8);\n  if (local_d0 != uVar6) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }\n  local_d0 = 0;\n  uVar6 = 0;\n  __ptr = (dwarf_vma *)0x0;\n  while( true ) {\n    dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n    puVar27 = puVar27 + bytes_read;\n    if (dVar11 == 0) break;\n    if (uVar6 == local_d0) {\n      local_d0 = uVar6 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (dwarf_vma *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar6) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    pdVar14 = __ptr + uVar6 * 2;\n    if (__ptr < pdVar14) {\n      dVar13 = *__ptr;\n      pdVar12 = __ptr;\n      while (dVar11 != dVar13) {\n        pdVar12 = pdVar12 + 2;\n        if (pdVar14 <= pdVar12) goto LAB_001190c6;\n        dVar13 = *pdVar12;\n      }\n      puVar3 = section->start;\n      pcVar7 = (char *)dcgettext(0,\n                                 "Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);\n      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar3);\n    }\nLAB_001190c6:\n    pdVar14[1] = (dwarf_vma)puVar27;\n    *pdVar14 = dVar11;\n    uVar6 = uVar6 + 1;\n    read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n    puVar27 = puVar27 + bytes_read;\n    do {\n      puVar23 = &bytes_read;\n      dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n      uVar8 = (ulong)bytes_read;\n      dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n      puVar27 = puVar27 + uVar8 + bytes_read;\n    } while (dVar13 != 0 || dVar11 != 0);\n  }\n  pcVar7 = (char *)dcgettext(0,"\nSymbol table:\n",5);\n  printf(pcVar7);\n  if ((int)local_a0 != 0) {\n    local_90 = 0;\n    local_84 = 0;\n    uVar5 = (int)local_a0 - 1;\n    do {\n      uVar8 = (ulong)local_84;\n      lVar26 = uVar8 + local_88;\n      piVar29 = (int *)((long)puVar17 + uVar8 + local_a8);\n      uVar18 = local_88;\n      if (((int *)((long)puVar17 + lVar26 + local_a8) < local_c8) ||\n         ((eVar10 = 0, piVar29 < local_c8 && (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar10 = (*byte_get)((uchar *)piVar29,uVar18);\n      }\n      piVar29 = (int *)((long)puVar17 + uVar8 + lVar4);\n      uVar18 = local_88;\n      if (((int *)((long)puVar17 + lVar26 + lVar4) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 &&\n          (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar16 = (*byte_get)((uchar *)piVar29,uVar18);\n        local_98 = (int *)(eVar16 + (long)piVar30);\n      }\n      puVar27 = fetch_indirect_string(eVar10);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar17[local_90],puVar27);\n      uVar18 = 0xfffffffe;\n      local_a0 = 0xffffffffffffffff;\n      piVar29 = local_98;\n      while( true ) {\n        while (dVar11 = read_leb128((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8),\n              uVar18 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = dVar11;\n          uVar18 = 0;\n        }\n        if (dVar11 == 0) goto LAB_001193b3;\n        uVar8 = (ulong)bytes_read;\n        if (-1 < (int)uVar18) {\n          if ((uVar18 != 0) || (puVar22 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar22 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar22,dVar11);\n        }\n        if (__ptr + uVar6 * 2 <= __ptr) break;\n        dVar13 = *__ptr;\n        pdVar14 = __ptr;\n        while (dVar11 != dVar13) {\n          pdVar14 = pdVar14 + 2;\n          if (__ptr + uVar6 * 2 <= pdVar14) goto LAB_00119382;\n          dVar13 = *pdVar14;\n        }\n        puVar27 = (uchar *)pdVar14[1];\n        dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n        puVar27 = puVar27 + bytes_read;\n        if (-1 < (int)uVar18) {\n          pcVar7 = get_TAG_name(dVar11);\n          printf(" %s",pcVar7);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar8);\n        while( true ) {\n          puVar23 = &bytes_read;\n          dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n          uVar8 = (ulong)bytes_read;\n          dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n          puVar27 = puVar27 + uVar8 + bytes_read;\n          if (dVar13 == 0 && dVar11 == 0) break;\n          if (-1 < (int)uVar18) {\n            puVar15 = get_DW_IDX_name((uint)dVar11);\n            if (puVar15 == (char *)0x0) {\n              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(buffer_10768,100,pcVar7,dVar11);\n              puVar15 = buffer_10768;\n            }\n            printf(" %s",puVar15);\n          }\n          piVar29 = (int *)read_and_display_attr_value\n                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=');\n        }\n        uVar18 = uVar18 + 1;\n      }\nLAB_00119382:\n      puVar27 = section->start;\n      pcVar7 = (char *)dcgettext(0,\n                                 "Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);\n      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar27);\nLAB_001193b3:\n      if ((int)uVar18 < 1) {\n        pcVar7 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar7);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar5;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }\n  free(__ptr);\n  piVar2 = local_c8;\n  goto joined_r0x0011898e;\n}" primitive_type (function_declarator "display_debug_names(dwarf_section *section,void *file)" identifier (parameter_list "(dwarf_section *section,void *file)" ( (parameter_declaration "dwarf_section *section" type_identifier (pointer_declarator "*section" * identifier)) , (parameter_declaration "void *file" primitive_type (pointer_declarator "*file" * identifier)) ))) (compound_statement "{\n  int *piVar1;\n  int *piVar2;\n  uchar *puVar3;\n  long lVar4;\n  uint uVar5;\n  ulong uVar6;\n  char *pcVar7;\n  ulong uVar8;\n  char *pcVar9;\n  char *message;\n  elf_vma eVar10;\n  dwarf_vma dVar11;\n  dwarf_vma *pdVar12;\n  dwarf_vma dVar13;\n  dwarf_vma *__ptr;\n  dwarf_vma *pdVar14;\n  undefined1 *puVar15;\n  elf_vma eVar16;\n  uint *puVar17;\n  dwarf_section *in_RDX;\n  uint uVar18;\n  int iVar19;\n  int iVar20;\n  int iVar21;\n  undefined *puVar22;\n  uint *puVar23;\n  int *piVar24;\n  ulong uVar25;\n  long lVar26;\n  uchar *puVar27;\n  int *piVar28;\n  int *piVar29;\n  int *piVar30;\n  bool bVar31;\n  ulong local_d0;\n  int *local_c8;\n  ulong local_c0;\n  ulong local_b8;\n  ulong local_b0;\n  long local_a8;\n  dwarf_vma local_a0;\n  int *local_98;\n  ulong local_90;\n  uint local_88;\n  uint local_84;\n  uint local_70;\n  uint bytes_read;\n  \n  piVar2 = (int *)section->start;\n  piVar28 = (int *)((long)piVar2 + section->size);\n  introduce((dwarf_section *)section->name,(int)section + 0x18,in_RDX);\n  load_debug_section_with_follow(str,file);\njoined_r0x0011898e:\n  if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      iVar19 = 4;\nLAB_00118a58:\n      eVar10 = (*byte_get)((uchar *)piVar2,iVar19);\n      local_88 = 4;\n      if (eVar10 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          iVar19 = 8;\n        }\n        else if ((piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + eVar10);\n      uVar8 = (long)piVar30 - (long)section->start;\n      uVar6 = uVar8 + eVar10;\n      if (!CARRY8(uVar8,eVar10)) goto LAB_001189d9;\nLAB_00118a9b:\n      pcVar9 = dwarf_vmatoa_1("x",eVar10,0);\n      pcVar7 = section->name;\n      puVar27 = section->start;\n      message = (char *)dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(message,pcVar7,(long)piVar2 - (long)puVar27,pcVar9);\n      iVar19 = 0;\n    }\n    else {\n      iVar19 = (int)piVar28 - (int)piVar2;\n      if (iVar19 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      eVar10 = 0;\n      uVar6 = (long)piVar30 - (long)section->start;\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (section->size < uVar6) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      iVar19 = (int)eVar10;\n      if (piVar29 < local_c8) {\n        iVar20 = 2;\nLAB_00118af5:\n        eVar10 = (*byte_get)((uchar *)piVar30,iVar20);\n        pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar7,eVar10 & 0xffff);\n        if ((short)eVar10 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        iVar20 = (int)local_c8;\n        if (piVar24 < local_c8) {\n          iVar21 = 2;\nLAB_00119876:\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar21);\n          if ((short)eVar10 != 0) {\n            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;\n            warn(pcVar7,eVar10 & 0xffff);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          local_70 = (uint)eVar10;\n          if (local_70 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(pcVar7);\n          local_70 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        if (piVar29 < local_c8) {\n          iVar19 = 4;\nLAB_00119825:\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          uVar5 = (uint)eVar10;\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_98._0_4_ = (uint)eVar10;\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            local_a0._0_4_ = iVar19;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = local_c0 & 0xffffffff;\n            iVar19 = iVar20 - ((int)piVar30 + 0x1c);\n            if (7 < iVar19 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19);\n          iVar19 = (int)eVar10;\n          if ((eVar10 & 3) != 0) {\n            pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);\n            iVar19 = (-iVar19 & 3U) + iVar19;\n            warn(pcVar7,eVar10 & 0xffffffff);\n          }\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          if (iVar19 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n          goto LAB_00119825;\n          uVar5 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          iVar19 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);\n          local_84 = (uint)eVar10;\n          local_b8 = eVar10 & 0xffffffff;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar7);\n        if (local_70 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar6;\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar18 = (int)uVar25 + 1;\n            printf(pcVar7,uVar25,eVar10);\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          } while (uVar18 != local_70);\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar7);\n        if (uVar5 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar7,uVar6,eVar10);\n            uVar18 = (int)uVar6 + 1;\n            if (uVar18 == uVar5) break;\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar7);\n        if ((uint)local_98 != 0) {\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar7,uVar6);\n            print_dwarf_vma(eVar10,8);\n            putc(10,stdout);\n            uVar5 = (int)uVar6 + 1;\n            if (uVar5 == (uint)local_98) goto LAB_00118eee;\n            uVar6 = (ulong)uVar5;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && (iVar20 = iVar19, iVar19 - 1U < 8)) goto LAB_00118af5;\n      pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar7,0);\nLAB_00118a22:\n      pcVar7 = (char *)dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(pcVar7);\n      iVar19 = 0;\n    }\n  }\n  else {\n    iVar19 = 1;\n  }\n  return iVar19;\nLAB_00118eee:\n  piVar29 = piVar29 + uVar6 * 2 + 2;\nLAB_00118ef8:\n  putc(10,stdout);\n  puVar17 = (uint *)(local_90 + (long)piVar29);\n  lVar4 = local_b0 + local_a8;\n  puVar27 = (uchar *)((long)puVar17 + local_b0 + lVar4);\n  piVar30 = (int *)(puVar27 + local_c0);\n  if (local_c8 < piVar30) {\n    puVar27 = section->start;\n    pcVar7 = (char *)dcgettext(0,\n                               "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                               ,5);\n    warn(pcVar7,(long)piVar30 - (long)puVar27,(long)local_c8 - (long)puVar27,\n         (long)piVar2 - (long)puVar27);\n    return 0;\n  }\n  uVar6 = 0;\n  if (local_b8 != 0) {\n    uVar6 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar6 = (uVar6 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }\n  uVar8 = 0;\n  lVar26 = 0;\n  pcVar7 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);\n  printf(pcVar7,uVar6,local_b8);\n  if (local_d0 != 0) {\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar8 = 0;\n    uVar5 = *puVar17;\n    puVar23 = puVar17;\n    while (puVar23 = puVar23 + 1, puVar17 + local_d0 != puVar23) {\n      uVar18 = *puVar23;\n      if (uVar5 % local_84 == uVar18 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar5 = uVar18;\n        if (uVar8 < uVar25) {\n          uVar8 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar5 = uVar18;\n      }\n    }\n    uVar6 = uVar6 + lVar26;\n  }\n  pcVar7 = (char *)dcgettext(0,\n                             "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                             ,5);\n  printf(pcVar7,local_d0,lVar26,uVar8);\n  if (local_d0 != uVar6) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }\n  local_d0 = 0;\n  uVar6 = 0;\n  __ptr = (dwarf_vma *)0x0;\n  while( true ) {\n    dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n    puVar27 = puVar27 + bytes_read;\n    if (dVar11 == 0) break;\n    if (uVar6 == local_d0) {\n      local_d0 = uVar6 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (dwarf_vma *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar6) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    pdVar14 = __ptr + uVar6 * 2;\n    if (__ptr < pdVar14) {\n      dVar13 = *__ptr;\n      pdVar12 = __ptr;\n      while (dVar11 != dVar13) {\n        pdVar12 = pdVar12 + 2;\n        if (pdVar14 <= pdVar12) goto LAB_001190c6;\n        dVar13 = *pdVar12;\n      }\n      puVar3 = section->start;\n      pcVar7 = (char *)dcgettext(0,\n                                 "Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);\n      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar3);\n    }\nLAB_001190c6:\n    pdVar14[1] = (dwarf_vma)puVar27;\n    *pdVar14 = dVar11;\n    uVar6 = uVar6 + 1;\n    read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n    puVar27 = puVar27 + bytes_read;\n    do {\n      puVar23 = &bytes_read;\n      dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n      uVar8 = (ulong)bytes_read;\n      dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n      puVar27 = puVar27 + uVar8 + bytes_read;\n    } while (dVar13 != 0 || dVar11 != 0);\n  }\n  pcVar7 = (char *)dcgettext(0,"\nSymbol table:\n",5);\n  printf(pcVar7);\n  if ((int)local_a0 != 0) {\n    local_90 = 0;\n    local_84 = 0;\n    uVar5 = (int)local_a0 - 1;\n    do {\n      uVar8 = (ulong)local_84;\n      lVar26 = uVar8 + local_88;\n      piVar29 = (int *)((long)puVar17 + uVar8 + local_a8);\n      uVar18 = local_88;\n      if (((int *)((long)puVar17 + lVar26 + local_a8) < local_c8) ||\n         ((eVar10 = 0, piVar29 < local_c8 && (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar10 = (*byte_get)((uchar *)piVar29,uVar18);\n      }\n      piVar29 = (int *)((long)puVar17 + uVar8 + lVar4);\n      uVar18 = local_88;\n      if (((int *)((long)puVar17 + lVar26 + lVar4) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 &&\n          (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar16 = (*byte_get)((uchar *)piVar29,uVar18);\n        local_98 = (int *)(eVar16 + (long)piVar30);\n      }\n      puVar27 = fetch_indirect_string(eVar10);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar17[local_90],puVar27);\n      uVar18 = 0xfffffffe;\n      local_a0 = 0xffffffffffffffff;\n      piVar29 = local_98;\n      while( true ) {\n        while (dVar11 = read_leb128((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8),\n              uVar18 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = dVar11;\n          uVar18 = 0;\n        }\n        if (dVar11 == 0) goto LAB_001193b3;\n        uVar8 = (ulong)bytes_read;\n        if (-1 < (int)uVar18) {\n          if ((uVar18 != 0) || (puVar22 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar22 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar22,dVar11);\n        }\n        if (__ptr + uVar6 * 2 <= __ptr) break;\n        dVar13 = *__ptr;\n        pdVar14 = __ptr;\n        while (dVar11 != dVar13) {\n          pdVar14 = pdVar14 + 2;\n          if (__ptr + uVar6 * 2 <= pdVar14) goto LAB_00119382;\n          dVar13 = *pdVar14;\n        }\n        puVar27 = (uchar *)pdVar14[1];\n        dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n        puVar27 = puVar27 + bytes_read;\n        if (-1 < (int)uVar18) {\n          pcVar7 = get_TAG_name(dVar11);\n          printf(" %s",pcVar7);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar8);\n        while( true ) {\n          puVar23 = &bytes_read;\n          dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n          uVar8 = (ulong)bytes_read;\n          dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n          puVar27 = puVar27 + uVar8 + bytes_read;\n          if (dVar13 == 0 && dVar11 == 0) break;\n          if (-1 < (int)uVar18) {\n            puVar15 = get_DW_IDX_name((uint)dVar11);\n            if (puVar15 == (char *)0x0) {\n              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(buffer_10768,100,pcVar7,dVar11);\n              puVar15 = buffer_10768;\n            }\n            printf(" %s",puVar15);\n          }\n          piVar29 = (int *)read_and_display_attr_value\n                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=');\n        }\n        uVar18 = uVar18 + 1;\n      }\nLAB_00119382:\n      puVar27 = section->start;\n      pcVar7 = (char *)dcgettext(0,\n                                 "Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);\n      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar27);\nLAB_001193b3:\n      if ((int)uVar18 < 1) {\n        pcVar7 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar7);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar5;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }\n  free(__ptr);\n  piVar2 = local_c8;\n  goto joined_r0x0011898e;\n}" { (declaration "int *piVar1;" primitive_type (pointer_declarator "*piVar1" * identifier) ;) (declaration "int *piVar2;" primitive_type (pointer_declarator "*piVar2" * identifier) ;) (declaration "uchar *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "long lVar4;" (sized_type_specifier "long" long) identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "ulong uVar6;" type_identifier identifier ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "ulong uVar8;" type_identifier identifier ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "char *message;" primitive_type (pointer_declarator "*message" * identifier) ;) (declaration "elf_vma eVar10;" type_identifier identifier ;) (declaration "dwarf_vma dVar11;" type_identifier identifier ;) (declaration "dwarf_vma *pdVar12;" type_identifier (pointer_declarator "*pdVar12" * identifier) ;) (declaration "dwarf_vma dVar13;" type_identifier identifier ;) (declaration "dwarf_vma *__ptr;" type_identifier (pointer_declarator "*__ptr" * identifier) ;) (declaration "dwarf_vma *pdVar14;" type_identifier (pointer_declarator "*pdVar14" * identifier) ;) (declaration "undefined1 *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "elf_vma eVar16;" type_identifier identifier ;) (declaration "uint *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "dwarf_section *in_RDX;" type_identifier (pointer_declarator "*in_RDX" * identifier) ;) (declaration "uint uVar18;" type_identifier identifier ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "int iVar20;" primitive_type identifier ;) (declaration "int iVar21;" primitive_type identifier ;) (declaration "undefined *puVar22;" type_identifier (pointer_declarator "*puVar22" * identifier) ;) (declaration "uint *puVar23;" type_identifier (pointer_declarator "*puVar23" * identifier) ;) (declaration "int *piVar24;" primitive_type (pointer_declarator "*piVar24" * identifier) ;) (declaration "ulong uVar25;" type_identifier identifier ;) (declaration "long lVar26;" (sized_type_specifier "long" long) identifier ;) (declaration "uchar *puVar27;" type_identifier (pointer_declarator "*puVar27" * identifier) ;) (declaration "int *piVar28;" primitive_type (pointer_declarator "*piVar28" * identifier) ;) (declaration "int *piVar29;" primitive_type (pointer_declarator "*piVar29" * identifier) ;) (declaration "int *piVar30;" primitive_type (pointer_declarator "*piVar30" * identifier) ;) (declaration "bool bVar31;" primitive_type identifier ;) (declaration "ulong local_d0;" type_identifier identifier ;) (declaration "int *local_c8;" primitive_type (pointer_declarator "*local_c8" * identifier) ;) (declaration "ulong local_c0;" type_identifier identifier ;) (declaration "ulong local_b8;" type_identifier identifier ;) (declaration "ulong local_b0;" type_identifier identifier ;) (declaration "long local_a8;" (sized_type_specifier "long" long) identifier ;) (declaration "dwarf_vma local_a0;" type_identifier identifier ;) (declaration "int *local_98;" primitive_type (pointer_declarator "*local_98" * identifier) ;) (declaration "ulong local_90;" type_identifier identifier ;) (declaration "uint local_88;" type_identifier identifier ;) (declaration "uint local_84;" type_identifier identifier ;) (declaration "uint local_70;" type_identifier identifier ;) (declaration "uint bytes_read;" type_identifier identifier ;) (expression_statement "piVar2 = (int *)section->start;" (assignment_expression "piVar2 = (int *)section->start" identifier = (cast_expression "(int *)section->start" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "section->start" identifier -> field_identifier))) ;) (expression_statement "piVar28 = (int *)((long)piVar2 + section->size);" (assignment_expression "piVar28 = (int *)((long)piVar2 + section->size)" identifier = (cast_expression "(int *)((long)piVar2 + section->size)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar2 + section->size)" ( (binary_expression "(long)piVar2 + section->size" (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (field_expression "section->size" identifier -> field_identifier)) )))) ;) (expression_statement "introduce((dwarf_section *)section->name,(int)section + 0x18,in_RDX);" (call_expression "introduce((dwarf_section *)section->name,(int)section + 0x18,in_RDX)" identifier (argument_list "((dwarf_section *)section->name,(int)section + 0x18,in_RDX)" ( (cast_expression "(dwarf_section *)section->name" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "section->name" identifier -> field_identifier)) , (binary_expression "(int)section + 0x18" (cast_expression "(int)section" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , identifier ))) ;) (expression_statement "load_debug_section_with_follow(str,file);" (call_expression "load_debug_section_with_follow(str,file)" identifier (argument_list "(str,file)" ( identifier , identifier ))) ;) (labeled_statement "joined_r0x0011898e:\n  if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      iVar19 = 4;\nLAB_00118a58:\n      eVar10 = (*byte_get)((uchar *)piVar2,iVar19);\n      local_88 = 4;\n      if (eVar10 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          iVar19 = 8;\n        }\n        else if ((piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + eVar10);\n      uVar8 = (long)piVar30 - (long)section->start;\n      uVar6 = uVar8 + eVar10;\n      if (!CARRY8(uVar8,eVar10)) goto LAB_001189d9;\nLAB_00118a9b:\n      pcVar9 = dwarf_vmatoa_1("x",eVar10,0);\n      pcVar7 = section->name;\n      puVar27 = section->start;\n      message = (char *)dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(message,pcVar7,(long)piVar2 - (long)puVar27,pcVar9);\n      iVar19 = 0;\n    }\n    else {\n      iVar19 = (int)piVar28 - (int)piVar2;\n      if (iVar19 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      eVar10 = 0;\n      uVar6 = (long)piVar30 - (long)section->start;\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (section->size < uVar6) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      iVar19 = (int)eVar10;\n      if (piVar29 < local_c8) {\n        iVar20 = 2;\nLAB_00118af5:\n        eVar10 = (*byte_get)((uchar *)piVar30,iVar20);\n        pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar7,eVar10 & 0xffff);\n        if ((short)eVar10 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        iVar20 = (int)local_c8;\n        if (piVar24 < local_c8) {\n          iVar21 = 2;\nLAB_00119876:\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar21);\n          if ((short)eVar10 != 0) {\n            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;\n            warn(pcVar7,eVar10 & 0xffff);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          local_70 = (uint)eVar10;\n          if (local_70 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(pcVar7);\n          local_70 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        if (piVar29 < local_c8) {\n          iVar19 = 4;\nLAB_00119825:\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          uVar5 = (uint)eVar10;\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_98._0_4_ = (uint)eVar10;\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            local_a0._0_4_ = iVar19;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = local_c0 & 0xffffffff;\n            iVar19 = iVar20 - ((int)piVar30 + 0x1c);\n            if (7 < iVar19 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19);\n          iVar19 = (int)eVar10;\n          if ((eVar10 & 3) != 0) {\n            pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);\n            iVar19 = (-iVar19 & 3U) + iVar19;\n            warn(pcVar7,eVar10 & 0xffffffff);\n          }\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          if (iVar19 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n          goto LAB_00119825;\n          uVar5 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          iVar19 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);\n          local_84 = (uint)eVar10;\n          local_b8 = eVar10 & 0xffffffff;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar7);\n        if (local_70 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar6;\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar18 = (int)uVar25 + 1;\n            printf(pcVar7,uVar25,eVar10);\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          } while (uVar18 != local_70);\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar7);\n        if (uVar5 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar7,uVar6,eVar10);\n            uVar18 = (int)uVar6 + 1;\n            if (uVar18 == uVar5) break;\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar7);\n        if ((uint)local_98 != 0) {\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar7,uVar6);\n            print_dwarf_vma(eVar10,8);\n            putc(10,stdout);\n            uVar5 = (int)uVar6 + 1;\n            if (uVar5 == (uint)local_98) goto LAB_00118eee;\n            uVar6 = (ulong)uVar5;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && (iVar20 = iVar19, iVar19 - 1U < 8)) goto LAB_00118af5;\n      pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar7,0);\nLAB_00118a22:\n      pcVar7 = (char *)dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(pcVar7);\n      iVar19 = 0;\n    }\n  }\n  else {\n    iVar19 = 1;\n  }" statement_identifier : (if_statement "if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      iVar19 = 4;\nLAB_00118a58:\n      eVar10 = (*byte_get)((uchar *)piVar2,iVar19);\n      local_88 = 4;\n      if (eVar10 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          iVar19 = 8;\n        }\n        else if ((piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + eVar10);\n      uVar8 = (long)piVar30 - (long)section->start;\n      uVar6 = uVar8 + eVar10;\n      if (!CARRY8(uVar8,eVar10)) goto LAB_001189d9;\nLAB_00118a9b:\n      pcVar9 = dwarf_vmatoa_1("x",eVar10,0);\n      pcVar7 = section->name;\n      puVar27 = section->start;\n      message = (char *)dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(message,pcVar7,(long)piVar2 - (long)puVar27,pcVar9);\n      iVar19 = 0;\n    }\n    else {\n      iVar19 = (int)piVar28 - (int)piVar2;\n      if (iVar19 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      eVar10 = 0;\n      uVar6 = (long)piVar30 - (long)section->start;\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (section->size < uVar6) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      iVar19 = (int)eVar10;\n      if (piVar29 < local_c8) {\n        iVar20 = 2;\nLAB_00118af5:\n        eVar10 = (*byte_get)((uchar *)piVar30,iVar20);\n        pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar7,eVar10 & 0xffff);\n        if ((short)eVar10 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        iVar20 = (int)local_c8;\n        if (piVar24 < local_c8) {\n          iVar21 = 2;\nLAB_00119876:\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar21);\n          if ((short)eVar10 != 0) {\n            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;\n            warn(pcVar7,eVar10 & 0xffff);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          local_70 = (uint)eVar10;\n          if (local_70 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(pcVar7);\n          local_70 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        if (piVar29 < local_c8) {\n          iVar19 = 4;\nLAB_00119825:\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          uVar5 = (uint)eVar10;\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_98._0_4_ = (uint)eVar10;\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            local_a0._0_4_ = iVar19;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = local_c0 & 0xffffffff;\n            iVar19 = iVar20 - ((int)piVar30 + 0x1c);\n            if (7 < iVar19 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19);\n          iVar19 = (int)eVar10;\n          if ((eVar10 & 3) != 0) {\n            pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);\n            iVar19 = (-iVar19 & 3U) + iVar19;\n            warn(pcVar7,eVar10 & 0xffffffff);\n          }\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          if (iVar19 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n          goto LAB_00119825;\n          uVar5 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          iVar19 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);\n          local_84 = (uint)eVar10;\n          local_b8 = eVar10 & 0xffffffff;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar7);\n        if (local_70 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar6;\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar18 = (int)uVar25 + 1;\n            printf(pcVar7,uVar25,eVar10);\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          } while (uVar18 != local_70);\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar7);\n        if (uVar5 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar7,uVar6,eVar10);\n            uVar18 = (int)uVar6 + 1;\n            if (uVar18 == uVar5) break;\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar7);\n        if ((uint)local_98 != 0) {\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar7,uVar6);\n            print_dwarf_vma(eVar10,8);\n            putc(10,stdout);\n            uVar5 = (int)uVar6 + 1;\n            if (uVar5 == (uint)local_98) goto LAB_00118eee;\n            uVar6 = (ulong)uVar5;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && (iVar20 = iVar19, iVar19 - 1U < 8)) goto LAB_00118af5;\n      pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar7,0);\nLAB_00118a22:\n      pcVar7 = (char *)dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(pcVar7);\n      iVar19 = 0;\n    }\n  }\n  else {\n    iVar19 = 1;\n  }" if (parenthesized_expression "(piVar2 < piVar28)" ( (binary_expression "piVar2 < piVar28" identifier < identifier) )) (compound_statement "{\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      iVar19 = 4;\nLAB_00118a58:\n      eVar10 = (*byte_get)((uchar *)piVar2,iVar19);\n      local_88 = 4;\n      if (eVar10 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          iVar19 = 8;\n        }\n        else if ((piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + eVar10);\n      uVar8 = (long)piVar30 - (long)section->start;\n      uVar6 = uVar8 + eVar10;\n      if (!CARRY8(uVar8,eVar10)) goto LAB_001189d9;\nLAB_00118a9b:\n      pcVar9 = dwarf_vmatoa_1("x",eVar10,0);\n      pcVar7 = section->name;\n      puVar27 = section->start;\n      message = (char *)dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(message,pcVar7,(long)piVar2 - (long)puVar27,pcVar9);\n      iVar19 = 0;\n    }\n    else {\n      iVar19 = (int)piVar28 - (int)piVar2;\n      if (iVar19 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      eVar10 = 0;\n      uVar6 = (long)piVar30 - (long)section->start;\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (section->size < uVar6) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      iVar19 = (int)eVar10;\n      if (piVar29 < local_c8) {\n        iVar20 = 2;\nLAB_00118af5:\n        eVar10 = (*byte_get)((uchar *)piVar30,iVar20);\n        pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar7,eVar10 & 0xffff);\n        if ((short)eVar10 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        iVar20 = (int)local_c8;\n        if (piVar24 < local_c8) {\n          iVar21 = 2;\nLAB_00119876:\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar21);\n          if ((short)eVar10 != 0) {\n            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;\n            warn(pcVar7,eVar10 & 0xffff);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          local_70 = (uint)eVar10;\n          if (local_70 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(pcVar7);\n          local_70 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        if (piVar29 < local_c8) {\n          iVar19 = 4;\nLAB_00119825:\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          uVar5 = (uint)eVar10;\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_98._0_4_ = (uint)eVar10;\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            local_a0._0_4_ = iVar19;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = local_c0 & 0xffffffff;\n            iVar19 = iVar20 - ((int)piVar30 + 0x1c);\n            if (7 < iVar19 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19);\n          iVar19 = (int)eVar10;\n          if ((eVar10 & 3) != 0) {\n            pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);\n            iVar19 = (-iVar19 & 3U) + iVar19;\n            warn(pcVar7,eVar10 & 0xffffffff);\n          }\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          if (iVar19 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n          goto LAB_00119825;\n          uVar5 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          iVar19 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);\n          local_84 = (uint)eVar10;\n          local_b8 = eVar10 & 0xffffffff;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar7);\n        if (local_70 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar6;\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar18 = (int)uVar25 + 1;\n            printf(pcVar7,uVar25,eVar10);\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          } while (uVar18 != local_70);\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar7);\n        if (uVar5 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar7,uVar6,eVar10);\n            uVar18 = (int)uVar6 + 1;\n            if (uVar18 == uVar5) break;\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar7);\n        if ((uint)local_98 != 0) {\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar7,uVar6);\n            print_dwarf_vma(eVar10,8);\n            putc(10,stdout);\n            uVar5 = (int)uVar6 + 1;\n            if (uVar5 == (uint)local_98) goto LAB_00118eee;\n            uVar6 = (ulong)uVar5;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && (iVar20 = iVar19, iVar19 - 1U < 8)) goto LAB_00118af5;\n      pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar7,0);\nLAB_00118a22:\n      pcVar7 = (char *)dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(pcVar7);\n      iVar19 = 0;\n    }\n  }" { (expression_statement "piVar29 = piVar2 + 1;" (assignment_expression "piVar29 = piVar2 + 1" identifier = (binary_expression "piVar2 + 1" identifier + number_literal)) ;) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" identifier = identifier) ;) (if_statement "if (piVar29 < piVar28) {\n      iVar19 = 4;\nLAB_00118a58:\n      eVar10 = (*byte_get)((uchar *)piVar2,iVar19);\n      local_88 = 4;\n      if (eVar10 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          iVar19 = 8;\n        }\n        else if ((piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + eVar10);\n      uVar8 = (long)piVar30 - (long)section->start;\n      uVar6 = uVar8 + eVar10;\n      if (!CARRY8(uVar8,eVar10)) goto LAB_001189d9;\nLAB_00118a9b:\n      pcVar9 = dwarf_vmatoa_1("x",eVar10,0);\n      pcVar7 = section->name;\n      puVar27 = section->start;\n      message = (char *)dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(message,pcVar7,(long)piVar2 - (long)puVar27,pcVar9);\n      iVar19 = 0;\n    }\n    else {\n      iVar19 = (int)piVar28 - (int)piVar2;\n      if (iVar19 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      eVar10 = 0;\n      uVar6 = (long)piVar30 - (long)section->start;\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (section->size < uVar6) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      iVar19 = (int)eVar10;\n      if (piVar29 < local_c8) {\n        iVar20 = 2;\nLAB_00118af5:\n        eVar10 = (*byte_get)((uchar *)piVar30,iVar20);\n        pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar7,eVar10 & 0xffff);\n        if ((short)eVar10 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        iVar20 = (int)local_c8;\n        if (piVar24 < local_c8) {\n          iVar21 = 2;\nLAB_00119876:\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar21);\n          if ((short)eVar10 != 0) {\n            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;\n            warn(pcVar7,eVar10 & 0xffff);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          local_70 = (uint)eVar10;\n          if (local_70 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(pcVar7);\n          local_70 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        if (piVar29 < local_c8) {\n          iVar19 = 4;\nLAB_00119825:\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          uVar5 = (uint)eVar10;\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_98._0_4_ = (uint)eVar10;\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            local_a0._0_4_ = iVar19;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = local_c0 & 0xffffffff;\n            iVar19 = iVar20 - ((int)piVar30 + 0x1c);\n            if (7 < iVar19 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19);\n          iVar19 = (int)eVar10;\n          if ((eVar10 & 3) != 0) {\n            pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);\n            iVar19 = (-iVar19 & 3U) + iVar19;\n            warn(pcVar7,eVar10 & 0xffffffff);\n          }\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          if (iVar19 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n          goto LAB_00119825;\n          uVar5 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          iVar19 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);\n          local_84 = (uint)eVar10;\n          local_b8 = eVar10 & 0xffffffff;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar7);\n        if (local_70 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar6;\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar18 = (int)uVar25 + 1;\n            printf(pcVar7,uVar25,eVar10);\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          } while (uVar18 != local_70);\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar7);\n        if (uVar5 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar7,uVar6,eVar10);\n            uVar18 = (int)uVar6 + 1;\n            if (uVar18 == uVar5) break;\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar7);\n        if ((uint)local_98 != 0) {\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar7,uVar6);\n            print_dwarf_vma(eVar10,8);\n            putc(10,stdout);\n            uVar5 = (int)uVar6 + 1;\n            if (uVar5 == (uint)local_98) goto LAB_00118eee;\n            uVar6 = (ulong)uVar5;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && (iVar20 = iVar19, iVar19 - 1U < 8)) goto LAB_00118af5;\n      pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar7,0);\nLAB_00118a22:\n      pcVar7 = (char *)dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(pcVar7);\n      iVar19 = 0;\n    }" if (parenthesized_expression "(piVar29 < piVar28)" ( (binary_expression "piVar29 < piVar28" identifier < identifier) )) (compound_statement "{\n      iVar19 = 4;\nLAB_00118a58:\n      eVar10 = (*byte_get)((uchar *)piVar2,iVar19);\n      local_88 = 4;\n      if (eVar10 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          iVar19 = 8;\n        }\n        else if ((piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + eVar10);\n      uVar8 = (long)piVar30 - (long)section->start;\n      uVar6 = uVar8 + eVar10;\n      if (!CARRY8(uVar8,eVar10)) goto LAB_001189d9;\nLAB_00118a9b:\n      pcVar9 = dwarf_vmatoa_1("x",eVar10,0);\n      pcVar7 = section->name;\n      puVar27 = section->start;\n      message = (char *)dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(message,pcVar7,(long)piVar2 - (long)puVar27,pcVar9);\n      iVar19 = 0;\n    }" { (expression_statement "iVar19 = 4;" (assignment_expression "iVar19 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00118a58:\n      eVar10 = (*byte_get)((uchar *)piVar2,iVar19);" statement_identifier : (expression_statement "eVar10 = (*byte_get)((uchar *)piVar2,iVar19);" (assignment_expression "eVar10 = (*byte_get)((uchar *)piVar2,iVar19)" identifier = (call_expression "(*byte_get)((uchar *)piVar2,iVar19)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)piVar2,iVar19)" ( (cast_expression "(uchar *)piVar2" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) (expression_statement "local_88 = 4;" (assignment_expression "local_88 = 4" identifier = number_literal) ;) (if_statement "if (eVar10 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          iVar19 = 8;\n        }\n        else if ((piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n        local_88 = 8;\n      }" if (parenthesized_expression "(eVar10 == 0xffffffff)" ( (binary_expression "eVar10 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          iVar19 = 8;\n        }\n        else if ((piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n        local_88 = 8;\n      }" { (expression_statement "piVar30 = piVar2 + 3;" (assignment_expression "piVar30 = piVar2 + 3" identifier = (binary_expression "piVar2 + 3" identifier + number_literal)) ;) (if_statement "if (piVar30 < piVar28) {\n          iVar19 = 8;\n        }\n        else if ((piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" if (parenthesized_expression "(piVar30 < piVar28)" ( (binary_expression "piVar30 < piVar28" identifier < identifier) )) (compound_statement "{\n          iVar19 = 8;\n        }" { (expression_statement "iVar19 = 8;" (assignment_expression "iVar19 = 8" identifier = number_literal) ;) }) (else_clause "else if ((piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" else (if_statement "if ((piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" if (parenthesized_expression "((piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U))" ( (binary_expression "(piVar28 <= piVar29) || (iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)" (parenthesized_expression "(piVar28 <= piVar29)" ( (binary_expression "piVar28 <= piVar29" identifier <= identifier) )) || (parenthesized_expression "(iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U)" ( (comma_expression "iVar19 = (int)piVar28 - (int)piVar29, 7 < iVar19 - 1U" (assignment_expression "iVar19 = (int)piVar28 - (int)piVar29" identifier = (binary_expression "(int)piVar28 - (int)piVar29" (cast_expression "(int)piVar28" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)piVar29" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "7 < iVar19 - 1U" number_literal < (binary_expression "iVar19 - 1U" identifier - number_literal))) ))) )) (compound_statement "{\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" { (expression_statement "local_88 = 8;" (assignment_expression "local_88 = 8" identifier = number_literal) ;) (goto_statement "goto LAB_001189c5;" goto statement_identifier ;) })))) (expression_statement "eVar10 = (*byte_get)((uchar *)piVar29,iVar19);" (assignment_expression "eVar10 = (*byte_get)((uchar *)piVar29,iVar19)" identifier = (call_expression "(*byte_get)((uchar *)piVar29,iVar19)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)piVar29,iVar19)" ( (cast_expression "(uchar *)piVar29" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) (expression_statement "local_88 = 8;" (assignment_expression "local_88 = 8" identifier = number_literal) ;) })) (expression_statement "local_c8 = (int *)((long)piVar30 + eVar10);" (assignment_expression "local_c8 = (int *)((long)piVar30 + eVar10)" identifier = (cast_expression "(int *)((long)piVar30 + eVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar30 + eVar10)" ( (binary_expression "(long)piVar30 + eVar10" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) )))) ;) (expression_statement "uVar8 = (long)piVar30 - (long)section->start;" (assignment_expression "uVar8 = (long)piVar30 - (long)section->start" identifier = (binary_expression "(long)piVar30 - (long)section->start" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)section->start" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "section->start" identifier -> field_identifier)))) ;) (expression_statement "uVar6 = uVar8 + eVar10;" (assignment_expression "uVar6 = uVar8 + eVar10" identifier = (binary_expression "uVar8 + eVar10" identifier + identifier)) ;) (if_statement "if (!CARRY8(uVar8,eVar10)) goto LAB_001189d9;" if (parenthesized_expression "(!CARRY8(uVar8,eVar10))" ( (unary_expression "!CARRY8(uVar8,eVar10)" ! (call_expression "CARRY8(uVar8,eVar10)" identifier (argument_list "(uVar8,eVar10)" ( identifier , identifier )))) )) (goto_statement "goto LAB_001189d9;" goto statement_identifier ;)) (labeled_statement "LAB_00118a9b:\n      pcVar9 = dwarf_vmatoa_1("x",eVar10,0);" statement_identifier : (expression_statement "pcVar9 = dwarf_vmatoa_1("x",eVar10,0);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("x",eVar10,0)" identifier = (call_expression "dwarf_vmatoa_1("x",eVar10,0)" identifier (argument_list "("x",eVar10,0)" ( (string_literal ""x"" " string_content ") , identifier , number_literal )))) ;)) (expression_statement "pcVar7 = section->name;" (assignment_expression "pcVar7 = section->name" identifier = (field_expression "section->name" identifier -> field_identifier)) ;) (expression_statement "puVar27 = section->start;" (assignment_expression "puVar27 = section->start" identifier = (field_expression "section->start" identifier -> field_identifier)) ;) (expression_statement "message = (char *)dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);" (assignment_expression "message = (char *)dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5)" identifier (argument_list "(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5)" ( number_literal , (string_literal ""Debug info is corrupted, %s header at %#lx has length %s\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(message,pcVar7,(long)piVar2 - (long)puVar27,pcVar9);" (call_expression "warn(message,pcVar7,(long)piVar2 - (long)puVar27,pcVar9)" identifier (argument_list "(message,pcVar7,(long)piVar2 - (long)puVar27,pcVar9)" ( identifier , identifier , (binary_expression "(long)piVar2 - (long)puVar27" (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)puVar27" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) , identifier ))) ;) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) }) (else_clause "else {\n      iVar19 = (int)piVar28 - (int)piVar2;\n      if (iVar19 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      eVar10 = 0;\n      uVar6 = (long)piVar30 - (long)section->start;\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (section->size < uVar6) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      iVar19 = (int)eVar10;\n      if (piVar29 < local_c8) {\n        iVar20 = 2;\nLAB_00118af5:\n        eVar10 = (*byte_get)((uchar *)piVar30,iVar20);\n        pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar7,eVar10 & 0xffff);\n        if ((short)eVar10 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        iVar20 = (int)local_c8;\n        if (piVar24 < local_c8) {\n          iVar21 = 2;\nLAB_00119876:\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar21);\n          if ((short)eVar10 != 0) {\n            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;\n            warn(pcVar7,eVar10 & 0xffff);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          local_70 = (uint)eVar10;\n          if (local_70 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(pcVar7);\n          local_70 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        if (piVar29 < local_c8) {\n          iVar19 = 4;\nLAB_00119825:\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          uVar5 = (uint)eVar10;\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_98._0_4_ = (uint)eVar10;\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            local_a0._0_4_ = iVar19;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = local_c0 & 0xffffffff;\n            iVar19 = iVar20 - ((int)piVar30 + 0x1c);\n            if (7 < iVar19 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19);\n          iVar19 = (int)eVar10;\n          if ((eVar10 & 3) != 0) {\n            pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);\n            iVar19 = (-iVar19 & 3U) + iVar19;\n            warn(pcVar7,eVar10 & 0xffffffff);\n          }\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          if (iVar19 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n          goto LAB_00119825;\n          uVar5 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          iVar19 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);\n          local_84 = (uint)eVar10;\n          local_b8 = eVar10 & 0xffffffff;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar7);\n        if (local_70 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar6;\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar18 = (int)uVar25 + 1;\n            printf(pcVar7,uVar25,eVar10);\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          } while (uVar18 != local_70);\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar7);\n        if (uVar5 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar7,uVar6,eVar10);\n            uVar18 = (int)uVar6 + 1;\n            if (uVar18 == uVar5) break;\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar7);\n        if ((uint)local_98 != 0) {\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar7,uVar6);\n            print_dwarf_vma(eVar10,8);\n            putc(10,stdout);\n            uVar5 = (int)uVar6 + 1;\n            if (uVar5 == (uint)local_98) goto LAB_00118eee;\n            uVar6 = (ulong)uVar5;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && (iVar20 = iVar19, iVar19 - 1U < 8)) goto LAB_00118af5;\n      pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar7,0);\nLAB_00118a22:\n      pcVar7 = (char *)dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(pcVar7);\n      iVar19 = 0;\n    }" else (compound_statement "{\n      iVar19 = (int)piVar28 - (int)piVar2;\n      if (iVar19 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      eVar10 = 0;\n      uVar6 = (long)piVar30 - (long)section->start;\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (section->size < uVar6) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      iVar19 = (int)eVar10;\n      if (piVar29 < local_c8) {\n        iVar20 = 2;\nLAB_00118af5:\n        eVar10 = (*byte_get)((uchar *)piVar30,iVar20);\n        pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar7,eVar10 & 0xffff);\n        if ((short)eVar10 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        iVar20 = (int)local_c8;\n        if (piVar24 < local_c8) {\n          iVar21 = 2;\nLAB_00119876:\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar21);\n          if ((short)eVar10 != 0) {\n            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;\n            warn(pcVar7,eVar10 & 0xffff);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          local_70 = (uint)eVar10;\n          if (local_70 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(pcVar7);\n          local_70 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        if (piVar29 < local_c8) {\n          iVar19 = 4;\nLAB_00119825:\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          uVar5 = (uint)eVar10;\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_98._0_4_ = (uint)eVar10;\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            local_a0._0_4_ = iVar19;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = local_c0 & 0xffffffff;\n            iVar19 = iVar20 - ((int)piVar30 + 0x1c);\n            if (7 < iVar19 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19);\n          iVar19 = (int)eVar10;\n          if ((eVar10 & 3) != 0) {\n            pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);\n            iVar19 = (-iVar19 & 3U) + iVar19;\n            warn(pcVar7,eVar10 & 0xffffffff);\n          }\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          if (iVar19 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n          goto LAB_00119825;\n          uVar5 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          iVar19 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);\n          local_84 = (uint)eVar10;\n          local_b8 = eVar10 & 0xffffffff;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar7);\n        if (local_70 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar6;\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar18 = (int)uVar25 + 1;\n            printf(pcVar7,uVar25,eVar10);\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          } while (uVar18 != local_70);\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar7);\n        if (uVar5 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar7,uVar6,eVar10);\n            uVar18 = (int)uVar6 + 1;\n            if (uVar18 == uVar5) break;\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar7);\n        if ((uint)local_98 != 0) {\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar7,uVar6);\n            print_dwarf_vma(eVar10,8);\n            putc(10,stdout);\n            uVar5 = (int)uVar6 + 1;\n            if (uVar5 == (uint)local_98) goto LAB_00118eee;\n            uVar6 = (ulong)uVar5;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && (iVar20 = iVar19, iVar19 - 1U < 8)) goto LAB_00118af5;\n      pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar7,0);\nLAB_00118a22:\n      pcVar7 = (char *)dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(pcVar7);\n      iVar19 = 0;\n    }" { (expression_statement "iVar19 = (int)piVar28 - (int)piVar2;" (assignment_expression "iVar19 = (int)piVar28 - (int)piVar2" identifier = (binary_expression "(int)piVar28 - (int)piVar2" (cast_expression "(int)piVar28" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)piVar2" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (iVar19 - 1U < 8) goto LAB_00118a58;" if (parenthesized_expression "(iVar19 - 1U < 8)" ( (binary_expression "iVar19 - 1U < 8" (binary_expression "iVar19 - 1U" identifier - number_literal) < number_literal) )) (goto_statement "goto LAB_00118a58;" goto statement_identifier ;)) (expression_statement "local_88 = 4;" (assignment_expression "local_88 = 4" identifier = number_literal) ;) (labeled_statement "LAB_001189c5:\n      eVar10 = 0;" statement_identifier : (expression_statement "eVar10 = 0;" (assignment_expression "eVar10 = 0" identifier = number_literal) ;)) (expression_statement "uVar6 = (long)piVar30 - (long)section->start;" (assignment_expression "uVar6 = (long)piVar30 - (long)section->start" identifier = (binary_expression "(long)piVar30 - (long)section->start" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)section->start" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "section->start" identifier -> field_identifier)))) ;) (expression_statement "local_c8 = piVar30;" (assignment_expression "local_c8 = piVar30" identifier = identifier) ;) (labeled_statement "LAB_001189d9:\n      if (section->size < uVar6) goto LAB_00118a9b;" statement_identifier : (if_statement "if (section->size < uVar6) goto LAB_00118a9b;" if (parenthesized_expression "(section->size < uVar6)" ( (binary_expression "section->size < uVar6" (field_expression "section->size" identifier -> field_identifier) < identifier) )) (goto_statement "goto LAB_00118a9b;" goto statement_identifier ;))) (expression_statement "piVar29 = (int *)((long)piVar30 + 2);" (assignment_expression "piVar29 = (int *)((long)piVar30 + 2)" identifier = (cast_expression "(int *)((long)piVar30 + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar30 + 2)" ( (binary_expression "(long)piVar30 + 2" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) (expression_statement "iVar19 = (int)eVar10;" (assignment_expression "iVar19 = (int)eVar10" identifier = (cast_expression "(int)eVar10" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (piVar29 < local_c8) {\n        iVar20 = 2;\nLAB_00118af5:\n        eVar10 = (*byte_get)((uchar *)piVar30,iVar20);\n        pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar7,eVar10 & 0xffff);\n        if ((short)eVar10 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        iVar20 = (int)local_c8;\n        if (piVar24 < local_c8) {\n          iVar21 = 2;\nLAB_00119876:\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar21);\n          if ((short)eVar10 != 0) {\n            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;\n            warn(pcVar7,eVar10 & 0xffff);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          local_70 = (uint)eVar10;\n          if (local_70 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(pcVar7);\n          local_70 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        if (piVar29 < local_c8) {\n          iVar19 = 4;\nLAB_00119825:\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          uVar5 = (uint)eVar10;\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_98._0_4_ = (uint)eVar10;\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            local_a0._0_4_ = iVar19;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = local_c0 & 0xffffffff;\n            iVar19 = iVar20 - ((int)piVar30 + 0x1c);\n            if (7 < iVar19 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19);\n          iVar19 = (int)eVar10;\n          if ((eVar10 & 3) != 0) {\n            pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);\n            iVar19 = (-iVar19 & 3U) + iVar19;\n            warn(pcVar7,eVar10 & 0xffffffff);\n          }\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          if (iVar19 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n          goto LAB_00119825;\n          uVar5 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          iVar19 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);\n          local_84 = (uint)eVar10;\n          local_b8 = eVar10 & 0xffffffff;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar7);\n        if (local_70 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar6;\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar18 = (int)uVar25 + 1;\n            printf(pcVar7,uVar25,eVar10);\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          } while (uVar18 != local_70);\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar7);\n        if (uVar5 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar7,uVar6,eVar10);\n            uVar18 = (int)uVar6 + 1;\n            if (uVar18 == uVar5) break;\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar7);\n        if ((uint)local_98 != 0) {\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar7,uVar6);\n            print_dwarf_vma(eVar10,8);\n            putc(10,stdout);\n            uVar5 = (int)uVar6 + 1;\n            if (uVar5 == (uint)local_98) goto LAB_00118eee;\n            uVar6 = (ulong)uVar5;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }" if (parenthesized_expression "(piVar29 < local_c8)" ( (binary_expression "piVar29 < local_c8" identifier < identifier) )) (compound_statement "{\n        iVar20 = 2;\nLAB_00118af5:\n        eVar10 = (*byte_get)((uchar *)piVar30,iVar20);\n        pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar7,eVar10 & 0xffff);\n        if ((short)eVar10 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        iVar20 = (int)local_c8;\n        if (piVar24 < local_c8) {\n          iVar21 = 2;\nLAB_00119876:\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar21);\n          if ((short)eVar10 != 0) {\n            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;\n            warn(pcVar7,eVar10 & 0xffff);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          local_70 = (uint)eVar10;\n          if (local_70 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(pcVar7);\n          local_70 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        if (piVar29 < local_c8) {\n          iVar19 = 4;\nLAB_00119825:\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          uVar5 = (uint)eVar10;\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_98._0_4_ = (uint)eVar10;\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            local_a0._0_4_ = iVar19;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = local_c0 & 0xffffffff;\n            iVar19 = iVar20 - ((int)piVar30 + 0x1c);\n            if (7 < iVar19 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19);\n          iVar19 = (int)eVar10;\n          if ((eVar10 & 3) != 0) {\n            pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);\n            iVar19 = (-iVar19 & 3U) + iVar19;\n            warn(pcVar7,eVar10 & 0xffffffff);\n          }\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          if (iVar19 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n          goto LAB_00119825;\n          uVar5 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          iVar19 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);\n          local_84 = (uint)eVar10;\n          local_b8 = eVar10 & 0xffffffff;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar7);\n        if (local_70 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar6;\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar18 = (int)uVar25 + 1;\n            printf(pcVar7,uVar25,eVar10);\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          } while (uVar18 != local_70);\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar7);\n        if (uVar5 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar7,uVar6,eVar10);\n            uVar18 = (int)uVar6 + 1;\n            if (uVar18 == uVar5) break;\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1));\n        }\n        putc(10,stdout);\n        pcVar7 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar7);\n        if ((uint)local_98 != 0) {\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar7,uVar6);\n            print_dwarf_vma(eVar10,8);\n            putc(10,stdout);\n            uVar5 = (int)uVar6 + 1;\n            if (uVar5 == (uint)local_98) goto LAB_00118eee;\n            uVar6 = (ulong)uVar5;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }" { (expression_statement "iVar20 = 2;" (assignment_expression "iVar20 = 2" identifier = number_literal) ;) (labeled_statement "LAB_00118af5:\n        eVar10 = (*byte_get)((uchar *)piVar30,iVar20);" statement_identifier : (expression_statement "eVar10 = (*byte_get)((uchar *)piVar30,iVar20);" (assignment_expression "eVar10 = (*byte_get)((uchar *)piVar30,iVar20)" identifier = (call_expression "(*byte_get)((uchar *)piVar30,iVar20)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)piVar30,iVar20)" ( (cast_expression "(uchar *)piVar30" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) (expression_statement "pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"Version %ld\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Version %ld\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Version %ld\n",5)" identifier (argument_list "(0,"Version %ld\n",5)" ( number_literal , (string_literal ""Version %ld\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,eVar10 & 0xffff);" (call_expression "printf(pcVar7,eVar10 & 0xffff)" identifier (argument_list "(pcVar7,eVar10 & 0xffff)" ( identifier , (binary_expression "eVar10 & 0xffff" identifier & number_literal) ))) ;) (if_statement "if ((short)eVar10 != 5) goto LAB_00118a22;" if (parenthesized_expression "((short)eVar10 != 5)" ( (binary_expression "(short)eVar10 != 5" (cast_expression "(short)eVar10" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) identifier) != number_literal) )) (goto_statement "goto LAB_00118a22;" goto statement_identifier ;)) (expression_statement "piVar24 = piVar30 + 1;" (assignment_expression "piVar24 = piVar30 + 1" identifier = (binary_expression "piVar30 + 1" identifier + number_literal)) ;) (expression_statement "iVar20 = (int)local_c8;" (assignment_expression "iVar20 = (int)local_c8" identifier = (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (piVar24 < local_c8) {\n          iVar21 = 2;\nLAB_00119876:\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar21);\n          if ((short)eVar10 != 0) {\n            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;\n            warn(pcVar7,eVar10 & 0xffff);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          local_70 = (uint)eVar10;\n          if (local_70 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(pcVar7);\n          local_70 = 0;\n        }" if (parenthesized_expression "(piVar24 < local_c8)" ( (binary_expression "piVar24 < local_c8" identifier < identifier) )) (compound_statement "{\n          iVar21 = 2;\nLAB_00119876:\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar21);\n          if ((short)eVar10 != 0) {\n            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;\n            warn(pcVar7,eVar10 & 0xffff);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          local_70 = (uint)eVar10;\n          if (local_70 == 0) goto LAB_00118b74;\n        }" { (expression_statement "iVar21 = 2;" (assignment_expression "iVar21 = 2" identifier = number_literal) ;) (labeled_statement "LAB_00119876:\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar21);" statement_identifier : (expression_statement "eVar10 = (*byte_get)((uchar *)piVar29,iVar21);" (assignment_expression "eVar10 = (*byte_get)((uchar *)piVar29,iVar21)" identifier = (call_expression "(*byte_get)((uchar *)piVar29,iVar21)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)piVar29,iVar21)" ( (cast_expression "(uchar *)piVar29" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) (if_statement "if ((short)eVar10 != 0) {\n            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;\n            warn(pcVar7,eVar10 & 0xffff);\n          }" if (parenthesized_expression "((short)eVar10 != 0)" ( (binary_expression "(short)eVar10 != 0" (cast_expression "(short)eVar10" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) identifier) != number_literal) )) (compound_statement "{\n            pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;\n            warn(pcVar7,eVar10 & 0xffff);\n          }" { (expression_statement "pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)\n            ;" (assignment_expression "pcVar7 = (char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)" identifier (argument_list "(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)" ( number_literal , (string_literal ""Padding field of .debug_names must be 0 (found 0x%x)\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar7,eVar10 & 0xffff);" (call_expression "warn(pcVar7,eVar10 & 0xffff)" identifier (argument_list "(pcVar7,eVar10 & 0xffff)" ( identifier , (binary_expression "eVar10 & 0xffff" identifier & number_literal) ))) ;) })) (if_statement "if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;" if (parenthesized_expression "(piVar30 + 2 < local_c8)" ( (binary_expression "piVar30 + 2 < local_c8" (binary_expression "piVar30 + 2" identifier + number_literal) < identifier) )) (compound_statement "{\nLAB_00118b5e:\n            iVar19 = 4;\n          }" { (labeled_statement "LAB_00118b5e:\n            iVar19 = 4;" statement_identifier : (expression_statement "iVar19 = 4;" (assignment_expression "iVar19 = 4" identifier = number_literal) ;)) }) (else_clause "else if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;" else (if_statement "if ((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))\n          goto LAB_00118b74;" if (parenthesized_expression "((local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U))" ( (binary_expression "(local_c8 <= piVar24) || (iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U)" (parenthesized_expression "(local_c8 <= piVar24)" ( (binary_expression "local_c8 <= piVar24" identifier <= identifier) )) || (parenthesized_expression "(iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U)" ( (comma_expression "iVar19 = iVar20 - (int)piVar24, 7 < iVar19 - 1U" (assignment_expression "iVar19 = iVar20 - (int)piVar24" identifier = (binary_expression "iVar20 - (int)piVar24" identifier - (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "7 < iVar19 - 1U" number_literal < (binary_expression "iVar19 - 1U" identifier - number_literal))) ))) )) (goto_statement "goto LAB_00118b74;" goto statement_identifier ;)))) (expression_statement "eVar10 = (*byte_get)((uchar *)piVar24,iVar19);" (assignment_expression "eVar10 = (*byte_get)((uchar *)piVar24,iVar19)" identifier = (call_expression "(*byte_get)((uchar *)piVar24,iVar19)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)piVar24,iVar19)" ( (cast_expression "(uchar *)piVar24" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) (expression_statement "local_70 = (uint)eVar10;" (assignment_expression "local_70 = (uint)eVar10" identifier = (cast_expression "(uint)eVar10" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (local_70 == 0) goto LAB_00118b74;" if (parenthesized_expression "(local_70 == 0)" ( (binary_expression "local_70 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00118b74;" goto statement_identifier ;)) }) (else_clause "else {\n          if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(pcVar7);\n          local_70 = 0;\n        }" else (compound_statement "{\n          if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(pcVar7);\n          local_70 = 0;\n        }" { (if_statement "if ((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)) goto LAB_00119876;" if (parenthesized_expression "((piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8))" ( (binary_expression "(piVar29 < local_c8) && (iVar21 = iVar19 + -2, iVar19 - 3U < 8)" (parenthesized_expression "(piVar29 < local_c8)" ( (binary_expression "piVar29 < local_c8" identifier < identifier) )) && (parenthesized_expression "(iVar21 = iVar19 + -2, iVar19 - 3U < 8)" ( (comma_expression "iVar21 = iVar19 + -2, iVar19 - 3U < 8" (assignment_expression "iVar21 = iVar19 + -2" identifier = (binary_expression "iVar19 + -2" identifier + number_literal)) , (binary_expression "iVar19 - 3U < 8" (binary_expression "iVar19 - 3U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00119876;" goto statement_identifier ;)) (if_statement "if (piVar30 + 2 < local_c8) goto LAB_00118b5e;" if (parenthesized_expression "(piVar30 + 2 < local_c8)" ( (binary_expression "piVar30 + 2 < local_c8" (binary_expression "piVar30 + 2" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_00118b5e;" goto statement_identifier ;)) (labeled_statement "LAB_00118b74:\n          pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);" statement_identifier : (expression_statement "pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5)" identifier (argument_list "(0,"Compilation unit count must be >= 1 in .debug_names\n",5)" ( number_literal , (string_literal ""Compilation unit count must be >= 1 in .debug_names\n"" " string_content escape_sequence ") , number_literal ))))) ;)) (expression_statement "warn(pcVar7);" (call_expression "warn(pcVar7)" identifier (argument_list "(pcVar7)" ( identifier ))) ;) (expression_statement "local_70 = 0;" (assignment_expression "local_70 = 0" identifier = number_literal) ;) }))) (expression_statement "piVar24 = piVar30 + 2;" (assignment_expression "piVar24 = piVar30 + 2" identifier = (binary_expression "piVar30 + 2" identifier + number_literal)) ;) (expression_statement "piVar29 = piVar30 + 3;" (assignment_expression "piVar29 = piVar30 + 3" identifier = (binary_expression "piVar30 + 3" identifier + number_literal)) ;) (if_statement "if (piVar29 < local_c8) {\n          iVar19 = 4;\nLAB_00119825:\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          uVar5 = (uint)eVar10;\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_98._0_4_ = (uint)eVar10;\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            local_a0._0_4_ = iVar19;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = local_c0 & 0xffffffff;\n            iVar19 = iVar20 - ((int)piVar30 + 0x1c);\n            if (7 < iVar19 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19);\n          iVar19 = (int)eVar10;\n          if ((eVar10 & 3) != 0) {\n            pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);\n            iVar19 = (-iVar19 & 3U) + iVar19;\n            warn(pcVar7,eVar10 & 0xffffffff);\n          }\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          if (iVar19 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n          goto LAB_00119825;\n          uVar5 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          iVar19 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);\n          local_84 = (uint)eVar10;\n          local_b8 = eVar10 & 0xffffffff;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          piVar29 = piVar30 + 8;\n        }" if (parenthesized_expression "(piVar29 < local_c8)" ( (binary_expression "piVar29 < local_c8" identifier < identifier) )) (compound_statement "{\n          iVar19 = 4;\nLAB_00119825:\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n          uVar5 = (uint)eVar10;\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_98._0_4_ = (uint)eVar10;\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            local_a0._0_4_ = iVar19;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = local_c0 & 0xffffffff;\n            iVar19 = iVar20 - ((int)piVar30 + 0x1c);\n            if (7 < iVar19 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19);\n          iVar19 = (int)eVar10;\n          if ((eVar10 & 3) != 0) {\n            pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);\n            iVar19 = (-iVar19 & 3U) + iVar19;\n            warn(pcVar7,eVar10 & 0xffffffff);\n          }\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          if (iVar19 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }" { (expression_statement "iVar19 = 4;" (assignment_expression "iVar19 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00119825:\n          eVar10 = (*byte_get)((uchar *)piVar24,iVar19);" statement_identifier : (expression_statement "eVar10 = (*byte_get)((uchar *)piVar24,iVar19);" (assignment_expression "eVar10 = (*byte_get)((uchar *)piVar24,iVar19)" identifier = (call_expression "(*byte_get)((uchar *)piVar24,iVar19)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)piVar24,iVar19)" ( (cast_expression "(uchar *)piVar24" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) (expression_statement "uVar5 = (uint)eVar10;" (assignment_expression "uVar5 = (uint)eVar10" identifier = (cast_expression "(uint)eVar10" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            iVar19 = 4;\n          }\n          else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;" if (parenthesized_expression "(piVar30 + 4 < local_c8)" ( (binary_expression "piVar30 + 4 < local_c8" (binary_expression "piVar30 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\nLAB_001197d8:\n            iVar19 = 4;\n          }" { (labeled_statement "LAB_001197d8:\n            iVar19 = 4;" statement_identifier : (expression_statement "iVar19 = 4;" (assignment_expression "iVar19 = 4" identifier = number_literal) ;)) }) (else_clause "else if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;" else (if_statement "if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))\n          goto LAB_00118bd4;" if (parenthesized_expression "((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))" ( (binary_expression "(local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)" (parenthesized_expression "(local_c8 <= piVar29)" ( (binary_expression "local_c8 <= piVar29" identifier <= identifier) )) || (parenthesized_expression "(iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)" ( (comma_expression "iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U" (assignment_expression "iVar19 = iVar20 - (int)piVar29" identifier = (binary_expression "iVar20 - (int)piVar29" identifier - (cast_expression "(int)piVar29" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "7 < iVar19 - 1U" number_literal < (binary_expression "iVar19 - 1U" identifier - number_literal))) ))) )) (goto_statement "goto LAB_00118bd4;" goto statement_identifier ;)))) (expression_statement "eVar10 = (*byte_get)((uchar *)piVar29,iVar19);" (assignment_expression "eVar10 = (*byte_get)((uchar *)piVar29,iVar19)" identifier = (call_expression "(*byte_get)((uchar *)piVar29,iVar19)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)piVar29,iVar19)" ( (cast_expression "(uchar *)piVar29" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) (expression_statement "local_98._0_4_ = (uint)eVar10;" (assignment_expression "local_98._0_4_ = (uint)eVar10" (field_expression "local_98._0_4_" identifier . field_identifier) = (cast_expression "(uint)eVar10" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (piVar30 + 5 < local_c8) goto LAB_001195e0;" if (parenthesized_expression "(piVar30 + 5 < local_c8)" ( (binary_expression "piVar30 + 5 < local_c8" (binary_expression "piVar30 + 5" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_001195e0;" goto statement_identifier ;)) (if_statement "if ((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))\n          goto LAB_001195e5;" if (parenthesized_expression "((piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8))" ( (binary_expression "(piVar30 + 4 < local_c8) && (iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8)" (parenthesized_expression "(piVar30 + 4 < local_c8)" ( (binary_expression "piVar30 + 4 < local_c8" (binary_expression "piVar30 + 4" identifier + number_literal) < identifier) )) && (parenthesized_expression "(iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8)" ( (comma_expression "iVar19 = iVar20 - (int)(piVar30 + 4), iVar19 - 1U < 8" (assignment_expression "iVar19 = iVar20 - (int)(piVar30 + 4)" identifier = (binary_expression "iVar20 - (int)(piVar30 + 4)" identifier - (cast_expression "(int)(piVar30 + 4)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar30 + 4)" ( (binary_expression "piVar30 + 4" identifier + number_literal) ))))) , (binary_expression "iVar19 - 1U < 8" (binary_expression "iVar19 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_001195e5;" goto statement_identifier ;)) (labeled_statement "LAB_00118beb:\n          local_b8 = 0;" statement_identifier : (expression_statement "local_b8 = 0;" (assignment_expression "local_b8 = 0" identifier = number_literal) ;)) (expression_statement "local_84 = 0;" (assignment_expression "local_84 = 0" identifier = number_literal) ;) (expression_statement "local_90 = 0;" (assignment_expression "local_90 = 0" identifier = number_literal) ;) (if_statement "if (local_c8 <= piVar30 + 6) goto LAB_00118c14;" if (parenthesized_expression "(local_c8 <= piVar30 + 6)" ( (binary_expression "local_c8 <= piVar30 + 6" identifier <= (binary_expression "piVar30 + 6" identifier + number_literal)) )) (goto_statement "goto LAB_00118c14;" goto statement_identifier ;)) (labeled_statement "LAB_0011975e:\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);" statement_identifier : (expression_statement "eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4);" (assignment_expression "eVar10 = (*byte_get)((uchar *)(piVar30 + 5),4)" identifier = (call_expression "(*byte_get)((uchar *)(piVar30 + 5),4)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)(piVar30 + 5),4)" ( (cast_expression "(uchar *)(piVar30 + 5)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar30 + 5)" ( (binary_expression "piVar30 + 5" identifier + number_literal) ))) , number_literal )))) ;)) (expression_statement "local_a0._0_4_ = (int)eVar10;" (assignment_expression "local_a0._0_4_ = (int)eVar10" (field_expression "local_a0._0_4_" identifier . field_identifier) = (cast_expression "(int)eVar10" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "local_d0 = eVar10 & 0xffffffff;" (assignment_expression "local_d0 = eVar10 & 0xffffffff" identifier = (binary_expression "eVar10 & 0xffffffff" identifier & number_literal)) ;) (expression_statement "local_b0 = (ulong)((int)local_a0 * local_88);" (assignment_expression "local_b0 = (ulong)((int)local_a0 * local_88)" identifier = (call_expression "(ulong)((int)local_a0 * local_88)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((int)local_a0 * local_88)" ( (binary_expression "(int)local_a0 * local_88" (cast_expression "(int)local_a0" ( (type_descriptor "int" primitive_type) ) identifier) * identifier) )))) ;) (expression_statement "local_a8 = local_d0 << 2;" (assignment_expression "local_a8 = local_d0 << 2" identifier = (binary_expression "local_d0 << 2" identifier << number_literal)) ;) (expression_statement "iVar19 = (int)local_a0;" (assignment_expression "iVar19 = (int)local_a0" identifier = (cast_expression "(int)local_a0" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            local_a0._0_4_ = iVar19;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = local_c0 & 0xffffffff;\n            iVar19 = iVar20 - ((int)piVar30 + 0x1c);\n            if (7 < iVar19 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }" if (parenthesized_expression "(piVar30 + 7 < local_c8)" ( (binary_expression "piVar30 + 7 < local_c8" (binary_expression "piVar30 + 7" identifier + number_literal) < identifier) )) (compound_statement "{\nLAB_00119667:\n            local_a0._0_4_ = iVar19;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = local_c0 & 0xffffffff;\n            iVar19 = iVar20 - ((int)piVar30 + 0x1c);\n            if (7 < iVar19 - 1U) goto LAB_00118c5e;\n          }" { (labeled_statement "LAB_00119667:\n            local_a0._0_4_ = iVar19;" statement_identifier : (expression_statement "local_a0._0_4_ = iVar19;" (assignment_expression "local_a0._0_4_ = iVar19" (field_expression "local_a0._0_4_" identifier . field_identifier) = identifier) ;)) (expression_statement "local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4);" (assignment_expression "local_c0 = (*byte_get)((uchar *)(piVar30 + 6),4)" identifier = (call_expression "(*byte_get)((uchar *)(piVar30 + 6),4)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)(piVar30 + 6),4)" ( (cast_expression "(uchar *)(piVar30 + 6)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar30 + 6)" ( (binary_expression "piVar30 + 6" identifier + number_literal) ))) , number_literal )))) ;) (if_statement "if (piVar30 + 8 < local_c8) goto LAB_00119860;" if (parenthesized_expression "(piVar30 + 8 < local_c8)" ( (binary_expression "piVar30 + 8 < local_c8" (binary_expression "piVar30 + 8" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_00119860;" goto statement_identifier ;)) (expression_statement "local_c0 = local_c0 & 0xffffffff;" (assignment_expression "local_c0 = local_c0 & 0xffffffff" identifier = (binary_expression "local_c0 & 0xffffffff" identifier & number_literal)) ;) (expression_statement "iVar19 = iVar20 - ((int)piVar30 + 0x1c);" (assignment_expression "iVar19 = iVar20 - ((int)piVar30 + 0x1c)" identifier = (binary_expression "iVar20 - ((int)piVar30 + 0x1c)" identifier - (parenthesized_expression "((int)piVar30 + 0x1c)" ( (binary_expression "(int)piVar30 + 0x1c" (cast_expression "(int)piVar30" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (if_statement "if (7 < iVar19 - 1U) goto LAB_00118c5e;" if (parenthesized_expression "(7 < iVar19 - 1U)" ( (binary_expression "7 < iVar19 - 1U" number_literal < (binary_expression "iVar19 - 1U" identifier - number_literal)) )) (goto_statement "goto LAB_00118c5e;" goto statement_identifier ;)) }) (else_clause "else {\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }" else (compound_statement "{\n            iVar19 = iVar20 - (int)(piVar30 + 6);\n            if (7 < iVar19 - 1U) goto LAB_00118c46;\n            local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;\nLAB_00119867:\n            iVar19 = 4;\n          }" { (expression_statement "iVar19 = iVar20 - (int)(piVar30 + 6);" (assignment_expression "iVar19 = iVar20 - (int)(piVar30 + 6)" identifier = (binary_expression "iVar20 - (int)(piVar30 + 6)" identifier - (cast_expression "(int)(piVar30 + 6)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar30 + 6)" ( (binary_expression "piVar30 + 6" identifier + number_literal) ))))) ;) (if_statement "if (7 < iVar19 - 1U) goto LAB_00118c46;" if (parenthesized_expression "(7 < iVar19 - 1U)" ( (binary_expression "7 < iVar19 - 1U" number_literal < (binary_expression "iVar19 - 1U" identifier - number_literal)) )) (goto_statement "goto LAB_00118c46;" goto statement_identifier ;)) (expression_statement "local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19);" (assignment_expression "local_c0 = (*byte_get)((uchar *)(piVar30 + 6),iVar19)" identifier = (call_expression "(*byte_get)((uchar *)(piVar30 + 6),iVar19)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)(piVar30 + 6),iVar19)" ( (cast_expression "(uchar *)(piVar30 + 6)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar30 + 6)" ( (binary_expression "piVar30 + 6" identifier + number_literal) ))) , identifier )))) ;) (if_statement "if (local_c8 <= piVar30 + 8) {\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }" if (parenthesized_expression "(local_c8 <= piVar30 + 8)" ( (binary_expression "local_c8 <= piVar30 + 8" identifier <= (binary_expression "piVar30 + 8" identifier + number_literal)) )) (compound_statement "{\n              local_c0 = local_c0 & 0xffffffff;\n              goto LAB_00118c5e;\n            }" { (expression_statement "local_c0 = local_c0 & 0xffffffff;" (assignment_expression "local_c0 = local_c0 & 0xffffffff" identifier = (binary_expression "local_c0 & 0xffffffff" identifier & number_literal)) ;) (goto_statement "goto LAB_00118c5e;" goto statement_identifier ;) })) (labeled_statement "LAB_00119860:\n            local_c0 = local_c0 & 0xffffffff;" statement_identifier : (expression_statement "local_c0 = local_c0 & 0xffffffff;" (assignment_expression "local_c0 = local_c0 & 0xffffffff" identifier = (binary_expression "local_c0 & 0xffffffff" identifier & number_literal)) ;)) (labeled_statement "LAB_00119867:\n            iVar19 = 4;" statement_identifier : (expression_statement "iVar19 = 4;" (assignment_expression "iVar19 = 4" identifier = number_literal) ;)) }))) (expression_statement "piVar29 = piVar30 + 8;" (assignment_expression "piVar29 = piVar30 + 8" identifier = (binary_expression "piVar30 + 8" identifier + number_literal)) ;) (expression_statement "eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19);" (assignment_expression "eVar10 = (*byte_get)((uchar *)(piVar30 + 7),iVar19)" identifier = (call_expression "(*byte_get)((uchar *)(piVar30 + 7),iVar19)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)(piVar30 + 7),iVar19)" ( (cast_expression "(uchar *)(piVar30 + 7)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar30 + 7)" ( (binary_expression "piVar30 + 7" identifier + number_literal) ))) , identifier )))) ;) (expression_statement "iVar19 = (int)eVar10;" (assignment_expression "iVar19 = (int)eVar10" identifier = (cast_expression "(int)eVar10" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if ((eVar10 & 3) != 0) {\n            pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);\n            iVar19 = (-iVar19 & 3U) + iVar19;\n            warn(pcVar7,eVar10 & 0xffffffff);\n          }" if (parenthesized_expression "((eVar10 & 3) != 0)" ( (binary_expression "(eVar10 & 3) != 0" (parenthesized_expression "(eVar10 & 3)" ( (binary_expression "eVar10 & 3" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n            pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);\n            iVar19 = (-iVar19 & 3U) + iVar19;\n            warn(pcVar7,eVar10 & 0xffffffff);\n          }" { (expression_statement "pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5)" identifier (argument_list "(0,\n                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                                       ,5)" ( number_literal , (string_literal ""Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "iVar19 = (-iVar19 & 3U) + iVar19;" (assignment_expression "iVar19 = (-iVar19 & 3U) + iVar19" identifier = (binary_expression "(-iVar19 & 3U) + iVar19" (parenthesized_expression "(-iVar19 & 3U)" ( (binary_expression "-iVar19 & 3U" (unary_expression "-iVar19" - identifier) & number_literal) )) + identifier)) ;) (expression_statement "warn(pcVar7,eVar10 & 0xffffffff);" (call_expression "warn(pcVar7,eVar10 & 0xffffffff)" identifier (argument_list "(pcVar7,eVar10 & 0xffffffff)" ( identifier , (binary_expression "eVar10 & 0xffffffff" identifier & number_literal) ))) ;) })) (expression_statement "pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"Augmentation string:",5)" identifier = (cast_expression "(char *)dcgettext(0,"Augmentation string:",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Augmentation string:",5)" identifier (argument_list "(0,"Augmentation string:",5)" ( number_literal , (string_literal ""Augmentation string:"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar7);" (call_expression "printf(pcVar7)" identifier (argument_list "(pcVar7)" ( identifier ))) ;) (if_statement "if (iVar19 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n            piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }" { (expression_statement "piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21);" (assignment_expression "piVar30 = (int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21)" identifier = (cast_expression "(int *)((long)piVar30 + (ulong)(iVar19 - 1) + 0x21)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar30 + (ulong)(iVar19 - 1) + 0x21)" ( (binary_expression "(long)piVar30 + (ulong)(iVar19 - 1) + 0x21" (binary_expression "(long)piVar30 + (ulong)(iVar19 - 1)" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (call_expression "(ulong)(iVar19 - 1)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(iVar19 - 1)" ( (binary_expression "iVar19 - 1" identifier - number_literal) )))) + number_literal) )))) ;) (expression_statement "piVar24 = piVar29;" (assignment_expression "piVar24 = piVar29" identifier = identifier) ;) (do_statement "do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);" do (compound_statement "{\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }\n              printf(" %02x",uVar6);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            }" { (expression_statement "piVar1 = (int *)((long)piVar24 + 1);" (assignment_expression "piVar1 = (int *)((long)piVar24 + 1)" identifier = (cast_expression "(int *)((long)piVar24 + 1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar24 + 1)" ( (binary_expression "(long)piVar24 + 1" (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) (if_statement "if (piVar1 < local_c8) {\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }\n              else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }" if (parenthesized_expression "(piVar1 < local_c8)" ( (binary_expression "piVar1 < local_c8" identifier < identifier) )) (compound_statement "{\n                iVar19 = 1;\nLAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);\n                uVar6 = eVar10 & 0xff;\n              }" { (expression_statement "iVar19 = 1;" (assignment_expression "iVar19 = 1" identifier = number_literal) ;) (labeled_statement "LAB_00119753:\n                eVar10 = (*byte_get)((uchar *)piVar24,iVar19);" statement_identifier : (expression_statement "eVar10 = (*byte_get)((uchar *)piVar24,iVar19);" (assignment_expression "eVar10 = (*byte_get)((uchar *)piVar24,iVar19)" identifier = (call_expression "(*byte_get)((uchar *)piVar24,iVar19)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)piVar24,iVar19)" ( (cast_expression "(uchar *)piVar24" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) (expression_statement "uVar6 = eVar10 & 0xff;" (assignment_expression "uVar6 = eVar10 & 0xff" identifier = (binary_expression "eVar10 & 0xff" identifier & number_literal)) ;) }) (else_clause "else {\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }" else (compound_statement "{\n                uVar6 = 0;\n                if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;\n              }" { (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) (if_statement "if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n                goto LAB_00119753;" if (parenthesized_expression "((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))" ( (binary_expression "(piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8)" (parenthesized_expression "(piVar24 < local_c8)" ( (binary_expression "piVar24 < local_c8" identifier < identifier) )) && (parenthesized_expression "(iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8)" ( (comma_expression "iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8" (assignment_expression "iVar19 = iVar20 - (int)piVar24" identifier = (binary_expression "iVar20 - (int)piVar24" identifier - (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar19 - 1U < 8" (binary_expression "iVar19 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00119753;" goto statement_identifier ;)) }))) (expression_statement "printf(" %02x",uVar6);" (call_expression "printf(" %02x",uVar6)" identifier (argument_list "(" %02x",uVar6)" ( (string_literal "" %02x"" " string_content ") , identifier ))) ;) (expression_statement "piVar24 = piVar1;" (assignment_expression "piVar24 = piVar1" identifier = identifier) ;) (expression_statement "piVar29 = piVar30;" (assignment_expression "piVar29 = piVar30" identifier = identifier) ;) }) while (parenthesized_expression "(piVar1 != piVar30)" ( (binary_expression "piVar1 != piVar30" identifier != identifier) )) ;) })) }) (else_clause "else {\n          if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n          goto LAB_00119825;\n          uVar5 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          iVar19 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);\n          local_84 = (uint)eVar10;\n          local_b8 = eVar10 & 0xffffffff;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          piVar29 = piVar30 + 8;\n        }" else (compound_statement "{\n          if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n          goto LAB_00119825;\n          uVar5 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          iVar19 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);\n          local_84 = (uint)eVar10;\n          local_b8 = eVar10 & 0xffffffff;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          eVar10 = (*byte_get)((uchar *)piVar29,iVar19);\n          local_a0._0_4_ = (int)eVar10;\n          local_d0 = eVar10 & 0xffffffff;\n          local_b0 = (ulong)((int)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          iVar19 = (int)local_a0;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar7);\n          piVar29 = piVar30 + 8;\n        }" { (if_statement "if ((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))\n          goto LAB_00119825;" if (parenthesized_expression "((piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8))" ( (binary_expression "(piVar24 < local_c8) && (iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8)" (parenthesized_expression "(piVar24 < local_c8)" ( (binary_expression "piVar24 < local_c8" identifier < identifier) )) && (parenthesized_expression "(iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8)" ( (comma_expression "iVar19 = iVar20 - (int)piVar24, iVar19 - 1U < 8" (assignment_expression "iVar19 = iVar20 - (int)piVar24" identifier = (binary_expression "iVar20 - (int)piVar24" identifier - (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar19 - 1U < 8" (binary_expression "iVar19 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00119825;" goto statement_identifier ;)) (expression_statement "uVar5 = 0;" (assignment_expression "uVar5 = 0" identifier = number_literal) ;) (if_statement "if (piVar30 + 4 < local_c8) goto LAB_001197d8;" if (parenthesized_expression "(piVar30 + 4 < local_c8)" ( (binary_expression "piVar30 + 4 < local_c8" (binary_expression "piVar30 + 4" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_001197d8;" goto statement_identifier ;)) (labeled_statement "LAB_00118bd4:\n          local_98._0_4_ = 0;" statement_identifier : (expression_statement "local_98._0_4_ = 0;" (assignment_expression "local_98._0_4_ = 0" (field_expression "local_98._0_4_" identifier . field_identifier) = number_literal) ;)) (if_statement "if (local_c8 <= piVar30 + 5) goto LAB_00118beb;" if (parenthesized_expression "(local_c8 <= piVar30 + 5)" ( (binary_expression "local_c8 <= piVar30 + 5" identifier <= (binary_expression "piVar30 + 5" identifier + number_literal)) )) (goto_statement "goto LAB_00118beb;" goto statement_identifier ;)) (labeled_statement "LAB_001195e0:\n          iVar19 = 4;" statement_identifier : (expression_statement "iVar19 = 4;" (assignment_expression "iVar19 = 4" identifier = number_literal) ;)) (labeled_statement "LAB_001195e5:\n          piVar29 = piVar30 + 5;" statement_identifier : (expression_statement "piVar29 = piVar30 + 5;" (assignment_expression "piVar29 = piVar30 + 5" identifier = (binary_expression "piVar30 + 5" identifier + number_literal)) ;)) (expression_statement "eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19);" (assignment_expression "eVar10 = (*byte_get)((uchar *)(piVar30 + 4),iVar19)" identifier = (call_expression "(*byte_get)((uchar *)(piVar30 + 4),iVar19)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)(piVar30 + 4),iVar19)" ( (cast_expression "(uchar *)(piVar30 + 4)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar30 + 4)" ( (binary_expression "piVar30 + 4" identifier + number_literal) ))) , identifier )))) ;) (expression_statement "local_84 = (uint)eVar10;" (assignment_expression "local_84 = (uint)eVar10" identifier = (cast_expression "(uint)eVar10" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_b8 = eVar10 & 0xffffffff;" (assignment_expression "local_b8 = eVar10 & 0xffffffff" identifier = (binary_expression "eVar10 & 0xffffffff" identifier & number_literal)) ;) (expression_statement "local_90 = local_b8 << 2;" (assignment_expression "local_90 = local_b8 << 2" identifier = (binary_expression "local_b8 << 2" identifier << number_literal)) ;) (if_statement "if (piVar30 + 6 < local_c8) goto LAB_0011975e;" if (parenthesized_expression "(piVar30 + 6 < local_c8)" ( (binary_expression "piVar30 + 6 < local_c8" (binary_expression "piVar30 + 6" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_0011975e;" goto statement_identifier ;)) (if_statement "if ((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }" if (parenthesized_expression "((local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U))" ( (binary_expression "(local_c8 <= piVar29) || (iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)" (parenthesized_expression "(local_c8 <= piVar29)" ( (binary_expression "local_c8 <= piVar29" identifier <= identifier) )) || (parenthesized_expression "(iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U)" ( (comma_expression "iVar19 = iVar20 - (int)piVar29, 7 < iVar19 - 1U" (assignment_expression "iVar19 = iVar20 - (int)piVar29" identifier = (binary_expression "iVar20 - (int)piVar29" identifier - (cast_expression "(int)piVar29" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "7 < iVar19 - 1U" number_literal < (binary_expression "iVar19 - 1U" identifier - number_literal))) ))) )) (compound_statement "{\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            iVar19 = (int)local_a0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }" { (labeled_statement "LAB_00118c14:\n            local_a8 = 0;" statement_identifier : (expression_statement "local_a8 = 0;" (assignment_expression "local_a8 = 0" identifier = number_literal) ;)) (expression_statement "local_d0 = 0;" (assignment_expression "local_d0 = 0" identifier = number_literal) ;) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) (expression_statement "local_a0._0_4_ = 0;" (assignment_expression "local_a0._0_4_ = 0" (field_expression "local_a0._0_4_" identifier . field_identifier) = number_literal) ;) (expression_statement "iVar19 = (int)local_a0;" (assignment_expression "iVar19 = (int)local_a0" identifier = (cast_expression "(int)local_a0" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "local_a0._0_4_ = 0;" (assignment_expression "local_a0._0_4_ = 0" (field_expression "local_a0._0_4_" identifier . field_identifier) = number_literal) ;) (if_statement "if (local_c8 <= piVar30 + 7) goto LAB_00118c46;" if (parenthesized_expression "(local_c8 <= piVar30 + 7)" ( (binary_expression "local_c8 <= piVar30 + 7" identifier <= (binary_expression "piVar30 + 7" identifier + number_literal)) )) (goto_statement "goto LAB_00118c46;" goto statement_identifier ;)) (goto_statement "goto LAB_00119667;" goto statement_identifier ;) })) (expression_statement "eVar10 = (*byte_get)((uchar *)piVar29,iVar19);" (assignment_expression "eVar10 = (*byte_get)((uchar *)piVar29,iVar19)" identifier = (call_expression "(*byte_get)((uchar *)piVar29,iVar19)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)piVar29,iVar19)" ( (cast_expression "(uchar *)piVar29" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) (expression_statement "local_a0._0_4_ = (int)eVar10;" (assignment_expression "local_a0._0_4_ = (int)eVar10" (field_expression "local_a0._0_4_" identifier . field_identifier) = (cast_expression "(int)eVar10" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "local_d0 = eVar10 & 0xffffffff;" (assignment_expression "local_d0 = eVar10 & 0xffffffff" identifier = (binary_expression "eVar10 & 0xffffffff" identifier & number_literal)) ;) (expression_statement "local_b0 = (ulong)((int)local_a0 * local_88);" (assignment_expression "local_b0 = (ulong)((int)local_a0 * local_88)" identifier = (call_expression "(ulong)((int)local_a0 * local_88)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((int)local_a0 * local_88)" ( (binary_expression "(int)local_a0 * local_88" (cast_expression "(int)local_a0" ( (type_descriptor "int" primitive_type) ) identifier) * identifier) )))) ;) (expression_statement "local_a8 = local_d0 << 2;" (assignment_expression "local_a8 = local_d0 << 2" identifier = (binary_expression "local_d0 << 2" identifier << number_literal)) ;) (expression_statement "iVar19 = (int)local_a0;" (assignment_expression "iVar19 = (int)local_a0" identifier = (cast_expression "(int)local_a0" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (piVar30 + 7 < local_c8) goto LAB_00119667;" if (parenthesized_expression "(piVar30 + 7 < local_c8)" ( (binary_expression "piVar30 + 7 < local_c8" (binary_expression "piVar30 + 7" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_00119667;" goto statement_identifier ;)) (labeled_statement "LAB_00118c46:\n          local_c0 = 0;" statement_identifier : (expression_statement "local_c0 = 0;" (assignment_expression "local_c0 = 0" identifier = number_literal) ;)) (if_statement "if (piVar30 + 8 < local_c8) goto LAB_00119867;" if (parenthesized_expression "(piVar30 + 8 < local_c8)" ( (binary_expression "piVar30 + 8 < local_c8" (binary_expression "piVar30 + 8" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_00119867;" goto statement_identifier ;)) (labeled_statement "LAB_00118c5e:\n          pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);" statement_identifier : (expression_statement "pcVar7 = (char *)dcgettext(0,"Augmentation string:",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"Augmentation string:",5)" identifier = (cast_expression "(char *)dcgettext(0,"Augmentation string:",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Augmentation string:",5)" identifier (argument_list "(0,"Augmentation string:",5)" ( number_literal , (string_literal ""Augmentation string:"" " string_content ") , number_literal ))))) ;)) (expression_statement "printf(pcVar7);" (call_expression "printf(pcVar7)" identifier (argument_list "(pcVar7)" ( identifier ))) ;) (expression_statement "piVar29 = piVar30 + 8;" (assignment_expression "piVar29 = piVar30 + 8" identifier = (binary_expression "piVar30 + 8" identifier + number_literal)) ;) }))) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,"CU table:\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"CU table:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"CU table:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"CU table:\n",5)" identifier (argument_list "(0,"CU table:\n",5)" ( number_literal , (string_literal ""CU table:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7);" (call_expression "printf(pcVar7)" identifier (argument_list "(pcVar7)" ( identifier ))) ;) (if_statement "if (local_70 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar6;\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar18 = (int)uVar25 + 1;\n            printf(pcVar7,uVar25,eVar10);\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          } while (uVar18 != local_70);\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1));\n        }" if (parenthesized_expression "(local_70 != 0)" ( (binary_expression "local_70 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar6;\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar18 = (int)uVar25 + 1;\n            printf(pcVar7,uVar25,eVar10);\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          } while (uVar18 != local_70);\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1));\n        }" { (expression_statement "uVar8 = (ulong)local_88;" (assignment_expression "uVar8 = (ulong)local_88" identifier = (cast_expression "(ulong)local_88" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" identifier = identifier) ;) (do_statement "do {\n            uVar25 = uVar6;\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar18 = (int)uVar25 + 1;\n            printf(pcVar7,uVar25,eVar10);\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          } while (uVar18 != local_70);" do (compound_statement "{\n            uVar25 = uVar6;\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar18 = (int)uVar25 + 1;\n            printf(pcVar7,uVar25,eVar10);\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }" { (expression_statement "uVar25 = uVar6;" (assignment_expression "uVar25 = uVar6" identifier = identifier) ;) (expression_statement "piVar24 = (int *)((long)piVar30 + uVar8);" (assignment_expression "piVar24 = (int *)((long)piVar30 + uVar8)" identifier = (cast_expression "(int *)((long)piVar30 + uVar8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar30 + uVar8)" ( (binary_expression "(long)piVar30 + uVar8" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) )))) ;) (expression_statement "uVar18 = local_88;" (assignment_expression "uVar18 = local_88" identifier = identifier) ;) (if_statement "if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }" if (parenthesized_expression "((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8))))" ( (binary_expression "(piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))" (parenthesized_expression "(piVar24 < local_c8)" ( (binary_expression "piVar24 < local_c8" identifier < identifier) )) || (parenthesized_expression "((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))" ( (parenthesized_expression "(eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8))" ( (comma_expression "eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)" (assignment_expression "eVar10 = 0" identifier = number_literal) , (binary_expression "(int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)" (binary_expression "(int *)((long)piVar24 - uVar8) < local_c8" (cast_expression "(int *)((long)piVar24 - uVar8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar24 - uVar8)" ( (binary_expression "(long)piVar24 - uVar8" (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) ))) < identifier) && (parenthesized_expression "(uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)" ( (comma_expression "uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8" (assignment_expression "uVar18 = iVar20 - (int)piVar30" identifier = (binary_expression "iVar20 - (int)piVar30" identifier - (cast_expression "(int)piVar30" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "uVar18 - 1 < 8" (binary_expression "uVar18 - 1" identifier - number_literal) < number_literal)) )))) )) ))) )) (compound_statement "{\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }" { (expression_statement "eVar10 = (*byte_get)((uchar *)piVar30,uVar18);" (assignment_expression "eVar10 = (*byte_get)((uchar *)piVar30,uVar18)" identifier = (call_expression "(*byte_get)((uchar *)piVar30,uVar18)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)piVar30,uVar18)" ( (cast_expression "(uchar *)piVar30" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) })) (expression_statement "pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"[%3u] 0x%lx\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"[%3u] 0x%lx\n",5)" identifier (argument_list "(0,"[%3u] 0x%lx\n",5)" ( number_literal , (string_literal ""[%3u] 0x%lx\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "uVar18 = (int)uVar25 + 1;" (assignment_expression "uVar18 = (int)uVar25 + 1" identifier = (binary_expression "(int)uVar25 + 1" (cast_expression "(int)uVar25" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "printf(pcVar7,uVar25,eVar10);" (call_expression "printf(pcVar7,uVar25,eVar10)" identifier (argument_list "(pcVar7,uVar25,eVar10)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar6 = (ulong)uVar18;" (assignment_expression "uVar6 = (ulong)uVar18" identifier = (cast_expression "(ulong)uVar18" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "piVar30 = piVar24;" (assignment_expression "piVar30 = piVar24" identifier = identifier) ;) }) while (parenthesized_expression "(uVar18 != local_70)" ( (binary_expression "uVar18 != local_70" identifier != identifier) )) ;) (expression_statement "piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1));" (assignment_expression "piVar29 = (int *)((long)piVar29 + uVar8 * (uVar25 + 1))" identifier = (cast_expression "(int *)((long)piVar29 + uVar8 * (uVar25 + 1))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar29 + uVar8 * (uVar25 + 1))" ( (binary_expression "(long)piVar29 + uVar8 * (uVar25 + 1)" (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "uVar8 * (uVar25 + 1)" identifier * (parenthesized_expression "(uVar25 + 1)" ( (binary_expression "uVar25 + 1" identifier + number_literal) )))) )))) ;) })) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,"TU table:\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"TU table:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"TU table:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"TU table:\n",5)" identifier (argument_list "(0,"TU table:\n",5)" ( number_literal , (string_literal ""TU table:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7);" (call_expression "printf(pcVar7)" identifier (argument_list "(pcVar7)" ( identifier ))) ;) (if_statement "if (uVar5 != 0) {\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar7,uVar6,eVar10);\n            uVar18 = (int)uVar6 + 1;\n            if (uVar18 == uVar5) break;\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1));\n        }" if (parenthesized_expression "(uVar5 != 0)" ( (binary_expression "uVar5 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar8 = (ulong)local_88;\n          uVar6 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar7,uVar6,eVar10);\n            uVar18 = (int)uVar6 + 1;\n            if (uVar18 == uVar5) break;\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1));\n        }" { (expression_statement "uVar8 = (ulong)local_88;" (assignment_expression "uVar8 = (ulong)local_88" identifier = (cast_expression "(ulong)local_88" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" identifier = identifier) ;) (while_statement "while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar7,uVar6,eVar10);\n            uVar18 = (int)uVar6 + 1;\n            if (uVar18 == uVar5) break;\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n            piVar24 = (int *)((long)piVar30 + uVar8);\n            uVar18 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar7,uVar6,eVar10);\n            uVar18 = (int)uVar6 + 1;\n            if (uVar18 == uVar5) break;\n            uVar6 = (ulong)uVar18;\n            piVar30 = piVar24;\n          }" { (expression_statement "piVar24 = (int *)((long)piVar30 + uVar8);" (assignment_expression "piVar24 = (int *)((long)piVar30 + uVar8)" identifier = (cast_expression "(int *)((long)piVar30 + uVar8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar30 + uVar8)" ( (binary_expression "(long)piVar30 + uVar8" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) )))) ;) (expression_statement "uVar18 = local_88;" (assignment_expression "uVar18 = local_88" identifier = identifier) ;) (if_statement "if ((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))) {\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }" if (parenthesized_expression "((piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8))))" ( (binary_expression "(piVar24 < local_c8) ||\n               ((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))" (parenthesized_expression "(piVar24 < local_c8)" ( (binary_expression "piVar24 < local_c8" identifier < identifier) )) || (parenthesized_expression "((eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)))" ( (parenthesized_expression "(eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8))" ( (comma_expression "eVar10 = 0, (int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)" (assignment_expression "eVar10 = 0" identifier = number_literal) , (binary_expression "(int *)((long)piVar24 - uVar8) < local_c8 &&\n                (uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)" (binary_expression "(int *)((long)piVar24 - uVar8) < local_c8" (cast_expression "(int *)((long)piVar24 - uVar8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar24 - uVar8)" ( (binary_expression "(long)piVar24 - uVar8" (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) ))) < identifier) && (parenthesized_expression "(uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8)" ( (comma_expression "uVar18 = iVar20 - (int)piVar30, uVar18 - 1 < 8" (assignment_expression "uVar18 = iVar20 - (int)piVar30" identifier = (binary_expression "iVar20 - (int)piVar30" identifier - (cast_expression "(int)piVar30" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "uVar18 - 1 < 8" (binary_expression "uVar18 - 1" identifier - number_literal) < number_literal)) )))) )) ))) )) (compound_statement "{\n              eVar10 = (*byte_get)((uchar *)piVar30,uVar18);\n            }" { (expression_statement "eVar10 = (*byte_get)((uchar *)piVar30,uVar18);" (assignment_expression "eVar10 = (*byte_get)((uchar *)piVar30,uVar18)" identifier = (call_expression "(*byte_get)((uchar *)piVar30,uVar18)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)piVar30,uVar18)" ( (cast_expression "(uchar *)piVar30" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) })) (expression_statement "pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"[%3u] 0x%lx\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"[%3u] 0x%lx\n",5)" identifier (argument_list "(0,"[%3u] 0x%lx\n",5)" ( number_literal , (string_literal ""[%3u] 0x%lx\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,uVar6,eVar10);" (call_expression "printf(pcVar7,uVar6,eVar10)" identifier (argument_list "(pcVar7,uVar6,eVar10)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar18 = (int)uVar6 + 1;" (assignment_expression "uVar18 = (int)uVar6 + 1" identifier = (binary_expression "(int)uVar6 + 1" (cast_expression "(int)uVar6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (if_statement "if (uVar18 == uVar5) break;" if (parenthesized_expression "(uVar18 == uVar5)" ( (binary_expression "uVar18 == uVar5" identifier == identifier) )) (break_statement "break;" break ;)) (expression_statement "uVar6 = (ulong)uVar18;" (assignment_expression "uVar6 = (ulong)uVar18" identifier = (cast_expression "(ulong)uVar18" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "piVar30 = piVar24;" (assignment_expression "piVar30 = piVar24" identifier = identifier) ;) })) (expression_statement "piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1));" (assignment_expression "piVar29 = (int *)((long)piVar29 + uVar8 * (uVar6 + 1))" identifier = (cast_expression "(int *)((long)piVar29 + uVar8 * (uVar6 + 1))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar29 + uVar8 * (uVar6 + 1))" ( (binary_expression "(long)piVar29 + uVar8 * (uVar6 + 1)" (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "uVar8 * (uVar6 + 1)" identifier * (parenthesized_expression "(uVar6 + 1)" ( (binary_expression "uVar6 + 1" identifier + number_literal) )))) )))) ;) })) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,"Foreign TU table:\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"Foreign TU table:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Foreign TU table:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Foreign TU table:\n",5)" identifier (argument_list "(0,"Foreign TU table:\n",5)" ( number_literal , (string_literal ""Foreign TU table:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7);" (call_expression "printf(pcVar7)" identifier (argument_list "(pcVar7)" ( identifier ))) ;) (if_statement "if ((uint)local_98 != 0) {\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar7,uVar6);\n            print_dwarf_vma(eVar10,8);\n            putc(10,stdout);\n            uVar5 = (int)uVar6 + 1;\n            if (uVar5 == (uint)local_98) goto LAB_00118eee;\n            uVar6 = (ulong)uVar5;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }" if (parenthesized_expression "((uint)local_98 != 0)" ( (binary_expression "(uint)local_98 != 0" (cast_expression "(uint)local_98" ( (type_descriptor "uint" type_identifier) ) identifier) != number_literal) )) (compound_statement "{\n          uVar6 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar7,uVar6);\n            print_dwarf_vma(eVar10,8);\n            putc(10,stdout);\n            uVar5 = (int)uVar6 + 1;\n            if (uVar5 == (uint)local_98) goto LAB_00118eee;\n            uVar6 = (ulong)uVar5;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }" { (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" identifier = identifier) ;) (do_statement "do {\n            if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar7,uVar6);\n            print_dwarf_vma(eVar10,8);\n            putc(10,stdout);\n            uVar5 = (int)uVar6 + 1;\n            if (uVar5 == (uint)local_98) goto LAB_00118eee;\n            uVar6 = (ulong)uVar5;\n            piVar30 = piVar30 + 2;\n          } while( true );" do (compound_statement "{\n            if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }\n            pcVar7 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar7,uVar6);\n            print_dwarf_vma(eVar10,8);\n            putc(10,stdout);\n            uVar5 = (int)uVar6 + 1;\n            if (uVar5 == (uint)local_98) goto LAB_00118eee;\n            uVar6 = (ulong)uVar5;\n            piVar30 = piVar30 + 2;\n          }" { (if_statement "if (piVar30 + 2 < local_c8) {\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }\n            else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }" if (parenthesized_expression "(piVar30 + 2 < local_c8)" ( (binary_expression "piVar30 + 2 < local_c8" (binary_expression "piVar30 + 2" identifier + number_literal) < identifier) )) (compound_statement "{\n              iVar19 = 8;\nLAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);\n            }" { (expression_statement "iVar19 = 8;" (assignment_expression "iVar19 = 8" identifier = number_literal) ;) (labeled_statement "LAB_00118ee3:\n              eVar10 = (*byte_get)((uchar *)piVar30,iVar19);" statement_identifier : (expression_statement "eVar10 = (*byte_get)((uchar *)piVar30,iVar19);" (assignment_expression "eVar10 = (*byte_get)((uchar *)piVar30,iVar19)" identifier = (call_expression "(*byte_get)((uchar *)piVar30,iVar19)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)piVar30,iVar19)" ( (cast_expression "(uchar *)piVar30" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) }) (else_clause "else {\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }" else (compound_statement "{\n              eVar10 = 0;\n              if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;\n            }" { (expression_statement "eVar10 = 0;" (assignment_expression "eVar10 = 0" identifier = number_literal) ;) (if_statement "if ((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))\n              goto LAB_00118ee3;" if (parenthesized_expression "((piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8))" ( (binary_expression "(piVar30 < local_c8) && (iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8)" (parenthesized_expression "(piVar30 < local_c8)" ( (binary_expression "piVar30 < local_c8" identifier < identifier) )) && (parenthesized_expression "(iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8)" ( (comma_expression "iVar19 = iVar20 - (int)piVar30, iVar19 - 1U < 8" (assignment_expression "iVar19 = iVar20 - (int)piVar30" identifier = (binary_expression "iVar20 - (int)piVar30" identifier - (cast_expression "(int)piVar30" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar19 - 1U < 8" (binary_expression "iVar19 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00118ee3;" goto statement_identifier ;)) }))) (expression_statement "pcVar7 = (char *)dcgettext(0,"[%3u] ",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"[%3u] ",5)" identifier = (cast_expression "(char *)dcgettext(0,"[%3u] ",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"[%3u] ",5)" identifier (argument_list "(0,"[%3u] ",5)" ( number_literal , (string_literal ""[%3u] "" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,uVar6);" (call_expression "printf(pcVar7,uVar6)" identifier (argument_list "(pcVar7,uVar6)" ( identifier , identifier ))) ;) (expression_statement "print_dwarf_vma(eVar10,8);" (call_expression "print_dwarf_vma(eVar10,8)" identifier (argument_list "(eVar10,8)" ( identifier , number_literal ))) ;) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "uVar5 = (int)uVar6 + 1;" (assignment_expression "uVar5 = (int)uVar6 + 1" identifier = (binary_expression "(int)uVar6 + 1" (cast_expression "(int)uVar6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (if_statement "if (uVar5 == (uint)local_98) goto LAB_00118eee;" if (parenthesized_expression "(uVar5 == (uint)local_98)" ( (binary_expression "uVar5 == (uint)local_98" identifier == (cast_expression "(uint)local_98" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_00118eee;" goto statement_identifier ;)) (expression_statement "uVar6 = (ulong)uVar5;" (assignment_expression "uVar6 = (ulong)uVar5" identifier = (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "piVar30 = piVar30 + 2;" (assignment_expression "piVar30 = piVar30 + 2" identifier = (binary_expression "piVar30 + 2" identifier + number_literal)) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })) (goto_statement "goto LAB_00118ef8;" goto statement_identifier ;) })) (if_statement "if ((piVar30 < local_c8) && (iVar20 = iVar19, iVar19 - 1U < 8)) goto LAB_00118af5;" if (parenthesized_expression "((piVar30 < local_c8) && (iVar20 = iVar19, iVar19 - 1U < 8))" ( (binary_expression "(piVar30 < local_c8) && (iVar20 = iVar19, iVar19 - 1U < 8)" (parenthesized_expression "(piVar30 < local_c8)" ( (binary_expression "piVar30 < local_c8" identifier < identifier) )) && (parenthesized_expression "(iVar20 = iVar19, iVar19 - 1U < 8)" ( (comma_expression "iVar20 = iVar19, iVar19 - 1U < 8" (assignment_expression "iVar20 = iVar19" identifier = identifier) , (binary_expression "iVar19 - 1U < 8" (binary_expression "iVar19 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00118af5;" goto statement_identifier ;)) (expression_statement "pcVar7 = (char *)dcgettext(0,"Version %ld\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"Version %ld\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Version %ld\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Version %ld\n",5)" identifier (argument_list "(0,"Version %ld\n",5)" ( number_literal , (string_literal ""Version %ld\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,0);" (call_expression "printf(pcVar7,0)" identifier (argument_list "(pcVar7,0)" ( identifier , number_literal ))) ;) (labeled_statement "LAB_00118a22:\n      pcVar7 = (char *)dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);" statement_identifier : (expression_statement "pcVar7 = (char *)dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5)" identifier (argument_list "(0,"Only DWARF version 5 .debug_names is currently supported.\n",5)" ( number_literal , (string_literal ""Only DWARF version 5 .debug_names is currently supported.\n"" " string_content escape_sequence ") , number_literal ))))) ;)) (expression_statement "warn(pcVar7);" (call_expression "warn(pcVar7)" identifier (argument_list "(pcVar7)" ( identifier ))) ;) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) }))) }) (else_clause "else {\n    iVar19 = 1;\n  }" else (compound_statement "{\n    iVar19 = 1;\n  }" { (expression_statement "iVar19 = 1;" (assignment_expression "iVar19 = 1" identifier = number_literal) ;) })))) (return_statement "return iVar19;" return identifier ;) (labeled_statement "LAB_00118eee:\n  piVar29 = piVar29 + uVar6 * 2 + 2;" statement_identifier : (expression_statement "piVar29 = piVar29 + uVar6 * 2 + 2;" (assignment_expression "piVar29 = piVar29 + uVar6 * 2 + 2" identifier = (binary_expression "piVar29 + uVar6 * 2 + 2" (binary_expression "piVar29 + uVar6 * 2" identifier + (binary_expression "uVar6 * 2" identifier * number_literal)) + number_literal)) ;)) (labeled_statement "LAB_00118ef8:\n  putc(10,stdout);" statement_identifier : (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;)) (expression_statement "puVar17 = (uint *)(local_90 + (long)piVar29);" (assignment_expression "puVar17 = (uint *)(local_90 + (long)piVar29)" identifier = (cast_expression "(uint *)(local_90 + (long)piVar29)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_90 + (long)piVar29)" ( (binary_expression "local_90 + (long)piVar29" identifier + (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) ;) (expression_statement "lVar4 = local_b0 + local_a8;" (assignment_expression "lVar4 = local_b0 + local_a8" identifier = (binary_expression "local_b0 + local_a8" identifier + identifier)) ;) (expression_statement "puVar27 = (uchar *)((long)puVar17 + local_b0 + lVar4);" (assignment_expression "puVar27 = (uchar *)((long)puVar17 + local_b0 + lVar4)" identifier = (cast_expression "(uchar *)((long)puVar17 + local_b0 + lVar4)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar17 + local_b0 + lVar4)" ( (binary_expression "(long)puVar17 + local_b0 + lVar4" (binary_expression "(long)puVar17 + local_b0" (cast_expression "(long)puVar17" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + identifier) )))) ;) (expression_statement "piVar30 = (int *)(puVar27 + local_c0);" (assignment_expression "piVar30 = (int *)(puVar27 + local_c0)" identifier = (cast_expression "(int *)(puVar27 + local_c0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar27 + local_c0)" ( (binary_expression "puVar27 + local_c0" identifier + identifier) )))) ;) (if_statement "if (local_c8 < piVar30) {\n    puVar27 = section->start;\n    pcVar7 = (char *)dcgettext(0,\n                               "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                               ,5);\n    warn(pcVar7,(long)piVar30 - (long)puVar27,(long)local_c8 - (long)puVar27,\n         (long)piVar2 - (long)puVar27);\n    return 0;\n  }" if (parenthesized_expression "(local_c8 < piVar30)" ( (binary_expression "local_c8 < piVar30" identifier < identifier) )) (compound_statement "{\n    puVar27 = section->start;\n    pcVar7 = (char *)dcgettext(0,\n                               "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                               ,5);\n    warn(pcVar7,(long)piVar30 - (long)puVar27,(long)local_c8 - (long)puVar27,\n         (long)piVar2 - (long)puVar27);\n    return 0;\n  }" { (expression_statement "puVar27 = section->start;" (assignment_expression "puVar27 = section->start" identifier = (field_expression "section->start" identifier -> field_identifier)) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,\n                               "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                               ,5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,\n                               "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                               ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                               "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                               ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                               "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                               ,5)" identifier (argument_list "(0,\n                               "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                               ,5)" ( number_literal , (string_literal ""Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar7,(long)piVar30 - (long)puVar27,(long)local_c8 - (long)puVar27,\n         (long)piVar2 - (long)puVar27);" (call_expression "warn(pcVar7,(long)piVar30 - (long)puVar27,(long)local_c8 - (long)puVar27,\n         (long)piVar2 - (long)puVar27)" identifier (argument_list "(pcVar7,(long)piVar30 - (long)puVar27,(long)local_c8 - (long)puVar27,\n         (long)piVar2 - (long)puVar27)" ( identifier , (binary_expression "(long)piVar30 - (long)puVar27" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)puVar27" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) , (binary_expression "(long)local_c8 - (long)puVar27" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)puVar27" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) , (binary_expression "(long)piVar2 - (long)puVar27" (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)puVar27" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) ;) (return_statement "return 0;" return number_literal ;) })) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) (if_statement "if (local_b8 != 0) {\n    uVar6 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar6 = (uVar6 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }" if (parenthesized_expression "(local_b8 != 0)" ( (binary_expression "local_b8 != 0" identifier != number_literal) )) (compound_statement "{\n    uVar6 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar6 = (uVar6 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }" { (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) (expression_statement "piVar24 = piVar29 + local_b8;" (assignment_expression "piVar24 = piVar29 + local_b8" identifier = (binary_expression "piVar29 + local_b8" identifier + identifier)) ;) (do_statement "do {\n      uVar6 = (uVar6 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);" do (compound_statement "{\n      uVar6 = (uVar6 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    }" { (expression_statement "uVar6 = (uVar6 + 1) - (ulong)(*piVar29 == 0);" (assignment_expression "uVar6 = (uVar6 + 1) - (ulong)(*piVar29 == 0)" identifier = (binary_expression "(uVar6 + 1) - (ulong)(*piVar29 == 0)" (parenthesized_expression "(uVar6 + 1)" ( (binary_expression "uVar6 + 1" identifier + number_literal) )) - (call_expression "(ulong)(*piVar29 == 0)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(*piVar29 == 0)" ( (binary_expression "*piVar29 == 0" (pointer_expression "*piVar29" * identifier) == number_literal) ))))) ;) (expression_statement "piVar29 = piVar29 + 1;" (assignment_expression "piVar29 = piVar29 + 1" identifier = (binary_expression "piVar29 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(piVar24 != piVar29)" ( (binary_expression "piVar24 != piVar29" identifier != identifier) )) ;) })) (expression_statement "uVar8 = 0;" (assignment_expression "uVar8 = 0" identifier = number_literal) ;) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;) (expression_statement "pcVar7 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);" (assignment_expression "pcVar7 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" identifier = (cast_expression "(char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" identifier (argument_list "(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" ( number_literal , (string_literal ""Used %zu of %lu bucket.\n"" " string_content escape_sequence ") , (string_literal ""Used %zu of %lu buckets.\n"" " string_content escape_sequence ") , identifier ))))) ;) (expression_statement "printf(pcVar7,uVar6,local_b8);" (call_expression "printf(pcVar7,uVar6,local_b8)" identifier (argument_list "(pcVar7,uVar6,local_b8)" ( identifier , identifier , identifier ))) ;) (if_statement "if (local_d0 != 0) {\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar8 = 0;\n    uVar5 = *puVar17;\n    puVar23 = puVar17;\n    while (puVar23 = puVar23 + 1, puVar17 + local_d0 != puVar23) {\n      uVar18 = *puVar23;\n      if (uVar5 % local_84 == uVar18 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar5 = uVar18;\n        if (uVar8 < uVar25) {\n          uVar8 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar5 = uVar18;\n      }\n    }\n    uVar6 = uVar6 + lVar26;\n  }" if (parenthesized_expression "(local_d0 != 0)" ( (binary_expression "local_d0 != 0" identifier != number_literal) )) (compound_statement "{\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar8 = 0;\n    uVar5 = *puVar17;\n    puVar23 = puVar17;\n    while (puVar23 = puVar23 + 1, puVar17 + local_d0 != puVar23) {\n      uVar18 = *puVar23;\n      if (uVar5 % local_84 == uVar18 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar5 = uVar18;\n        if (uVar8 < uVar25) {\n          uVar8 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar5 = uVar18;\n      }\n    }\n    uVar6 = uVar6 + lVar26;\n  }" { (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;) (expression_statement "uVar8 = 0;" (assignment_expression "uVar8 = 0" identifier = number_literal) ;) (expression_statement "uVar5 = *puVar17;" (assignment_expression "uVar5 = *puVar17" identifier = (pointer_expression "*puVar17" * identifier)) ;) (expression_statement "puVar23 = puVar17;" (assignment_expression "puVar23 = puVar17" identifier = identifier) ;) (while_statement "while (puVar23 = puVar23 + 1, puVar17 + local_d0 != puVar23) {\n      uVar18 = *puVar23;\n      if (uVar5 % local_84 == uVar18 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar5 = uVar18;\n        if (uVar8 < uVar25) {\n          uVar8 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar5 = uVar18;\n      }\n    }" while (parenthesized_expression "(puVar23 = puVar23 + 1, puVar17 + local_d0 != puVar23)" ( (comma_expression "puVar23 = puVar23 + 1, puVar17 + local_d0 != puVar23" (assignment_expression "puVar23 = puVar23 + 1" identifier = (binary_expression "puVar23 + 1" identifier + number_literal)) , (binary_expression "puVar17 + local_d0 != puVar23" (binary_expression "puVar17 + local_d0" identifier + identifier) != identifier)) )) (compound_statement "{\n      uVar18 = *puVar23;\n      if (uVar5 % local_84 == uVar18 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar5 = uVar18;\n        if (uVar8 < uVar25) {\n          uVar8 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar5 = uVar18;\n      }\n    }" { (expression_statement "uVar18 = *puVar23;" (assignment_expression "uVar18 = *puVar23" identifier = (pointer_expression "*puVar23" * identifier)) ;) (if_statement "if (uVar5 % local_84 == uVar18 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar5 = uVar18;\n        if (uVar8 < uVar25) {\n          uVar8 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar5 = uVar18;\n      }" if (parenthesized_expression "(uVar5 % local_84 == uVar18 % local_84)" ( (binary_expression "uVar5 % local_84 == uVar18 % local_84" (binary_expression "uVar5 % local_84" identifier % identifier) == (binary_expression "uVar18 % local_84" identifier % identifier)) )) (compound_statement "{\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar5 = uVar18;\n        if (uVar8 < uVar25) {\n          uVar8 = uVar25;\n        }\n      }" { (expression_statement "uVar25 = uVar25 + 1;" (assignment_expression "uVar25 = uVar25 + 1" identifier = (binary_expression "uVar25 + 1" identifier + number_literal)) ;) (expression_statement "lVar26 = lVar26 + 1;" (assignment_expression "lVar26 = lVar26 + 1" identifier = (binary_expression "lVar26 + 1" identifier + number_literal)) ;) (expression_statement "uVar5 = uVar18;" (assignment_expression "uVar5 = uVar18" identifier = identifier) ;) (if_statement "if (uVar8 < uVar25) {\n          uVar8 = uVar25;\n        }" if (parenthesized_expression "(uVar8 < uVar25)" ( (binary_expression "uVar8 < uVar25" identifier < identifier) )) (compound_statement "{\n          uVar8 = uVar25;\n        }" { (expression_statement "uVar8 = uVar25;" (assignment_expression "uVar8 = uVar25" identifier = identifier) ;) })) }) (else_clause "else {\n        uVar25 = 0;\n        uVar5 = uVar18;\n      }" else (compound_statement "{\n        uVar25 = 0;\n        uVar5 = uVar18;\n      }" { (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) (expression_statement "uVar5 = uVar18;" (assignment_expression "uVar5 = uVar18" identifier = identifier) ;) }))) })) (expression_statement "uVar6 = uVar6 + lVar26;" (assignment_expression "uVar6 = uVar6 + lVar26" identifier = (binary_expression "uVar6 + lVar26" identifier + identifier)) ;) })) (expression_statement "pcVar7 = (char *)dcgettext(0,\n                             "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                             ,5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,\n                             "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                             ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                             "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                             ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                             "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                             ,5)" identifier (argument_list "(0,\n                             "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                             ,5)" ( number_literal , (string_literal ""Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_d0,lVar26,uVar8);" (call_expression "printf(pcVar7,local_d0,lVar26,uVar8)" identifier (argument_list "(pcVar7,local_d0,lVar26,uVar8)" ( identifier , identifier , identifier , identifier ))) ;) (if_statement "if (local_d0 != uVar6) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }" if (parenthesized_expression "(local_d0 != uVar6)" ( (binary_expression "local_d0 != uVar6" identifier != identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }" { comment (expression_statement "__assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");" (call_expression "__assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names")" identifier (argument_list "("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names")" ( (string_literal ""name_count == buckets_filled + hash_clash_count"" " string_content ") , (string_literal ""../../binutils/dwarf.c"" " string_content ") , number_literal , (string_literal ""display_debug_names"" " string_content ") ))) ;) })) (expression_statement "local_d0 = 0;" (assignment_expression "local_d0 = 0" identifier = number_literal) ;) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) (expression_statement "__ptr = (dwarf_vma *)0x0;" (assignment_expression "__ptr = (dwarf_vma *)0x0" identifier = (cast_expression "(dwarf_vma *)0x0" ( (type_descriptor "dwarf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (while_statement "while( true ) {\n    dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n    puVar27 = puVar27 + bytes_read;\n    if (dVar11 == 0) break;\n    if (uVar6 == local_d0) {\n      local_d0 = uVar6 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (dwarf_vma *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar6) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    pdVar14 = __ptr + uVar6 * 2;\n    if (__ptr < pdVar14) {\n      dVar13 = *__ptr;\n      pdVar12 = __ptr;\n      while (dVar11 != dVar13) {\n        pdVar12 = pdVar12 + 2;\n        if (pdVar14 <= pdVar12) goto LAB_001190c6;\n        dVar13 = *pdVar12;\n      }\n      puVar3 = section->start;\n      pcVar7 = (char *)dcgettext(0,\n                                 "Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);\n      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar3);\n    }\nLAB_001190c6:\n    pdVar14[1] = (dwarf_vma)puVar27;\n    *pdVar14 = dVar11;\n    uVar6 = uVar6 + 1;\n    read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n    puVar27 = puVar27 + bytes_read;\n    do {\n      puVar23 = &bytes_read;\n      dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n      uVar8 = (ulong)bytes_read;\n      dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n      puVar27 = puVar27 + uVar8 + bytes_read;\n    } while (dVar13 != 0 || dVar11 != 0);\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n    puVar27 = puVar27 + bytes_read;\n    if (dVar11 == 0) break;\n    if (uVar6 == local_d0) {\n      local_d0 = uVar6 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (dwarf_vma *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar6) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    pdVar14 = __ptr + uVar6 * 2;\n    if (__ptr < pdVar14) {\n      dVar13 = *__ptr;\n      pdVar12 = __ptr;\n      while (dVar11 != dVar13) {\n        pdVar12 = pdVar12 + 2;\n        if (pdVar14 <= pdVar12) goto LAB_001190c6;\n        dVar13 = *pdVar12;\n      }\n      puVar3 = section->start;\n      pcVar7 = (char *)dcgettext(0,\n                                 "Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);\n      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar3);\n    }\nLAB_001190c6:\n    pdVar14[1] = (dwarf_vma)puVar27;\n    *pdVar14 = dVar11;\n    uVar6 = uVar6 + 1;\n    read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n    puVar27 = puVar27 + bytes_read;\n    do {\n      puVar23 = &bytes_read;\n      dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n      uVar8 = (ulong)bytes_read;\n      dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n      puVar27 = puVar27 + uVar8 + bytes_read;\n    } while (dVar13 != 0 || dVar11 != 0);\n  }" { (expression_statement "dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);" (assignment_expression "dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30)" identifier = (call_expression "read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30)" identifier (argument_list "(puVar27,&bytes_read,0,(uchar *)piVar30)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)piVar30" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "puVar27 = puVar27 + bytes_read;" (assignment_expression "puVar27 = puVar27 + bytes_read" identifier = (binary_expression "puVar27 + bytes_read" identifier + identifier)) ;) (if_statement "if (dVar11 == 0) break;" if (parenthesized_expression "(dVar11 == 0)" ( (binary_expression "dVar11 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (if_statement "if (uVar6 == local_d0) {\n      local_d0 = uVar6 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (dwarf_vma *)xrealloc(__ptr,local_d0 << 4);\n    }" if (parenthesized_expression "(uVar6 == local_d0)" ( (binary_expression "uVar6 == local_d0" identifier == identifier) )) (compound_statement "{\n      local_d0 = uVar6 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (dwarf_vma *)xrealloc(__ptr,local_d0 << 4);\n    }" { (expression_statement "local_d0 = uVar6 * 2;" (assignment_expression "local_d0 = uVar6 * 2" identifier = (binary_expression "uVar6 * 2" identifier * number_literal)) ;) (if_statement "if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }" if (parenthesized_expression "(local_d0 < 0x100)" ( (binary_expression "local_d0 < 0x100" identifier < number_literal) )) (compound_statement "{\n        local_d0 = 0x100;\n      }" { (expression_statement "local_d0 = 0x100;" (assignment_expression "local_d0 = 0x100" identifier = number_literal) ;) })) (expression_statement "__ptr = (dwarf_vma *)xrealloc(__ptr,local_d0 << 4);" (assignment_expression "__ptr = (dwarf_vma *)xrealloc(__ptr,local_d0 << 4)" identifier = (cast_expression "(dwarf_vma *)xrealloc(__ptr,local_d0 << 4)" ( (type_descriptor "dwarf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xrealloc(__ptr,local_d0 << 4)" identifier (argument_list "(__ptr,local_d0 << 4)" ( identifier , (binary_expression "local_d0 << 4" identifier << number_literal) ))))) ;) })) (if_statement "if (local_d0 <= uVar6) {\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }" if (parenthesized_expression "(local_d0 <= uVar6)" ( (binary_expression "local_d0 <= uVar6" identifier <= identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }" { comment (expression_statement "__assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");" (call_expression "__assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names")" identifier (argument_list "("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names")" ( (string_literal ""abbrev_lookup_used < abbrev_lookup_allocated"" " string_content ") , (string_literal ""../../binutils/dwarf.c"" " string_content ") , number_literal , (string_literal ""display_debug_names"" " string_content ") ))) ;) })) (expression_statement "pdVar14 = __ptr + uVar6 * 2;" (assignment_expression "pdVar14 = __ptr + uVar6 * 2" identifier = (binary_expression "__ptr + uVar6 * 2" identifier + (binary_expression "uVar6 * 2" identifier * number_literal))) ;) (if_statement "if (__ptr < pdVar14) {\n      dVar13 = *__ptr;\n      pdVar12 = __ptr;\n      while (dVar11 != dVar13) {\n        pdVar12 = pdVar12 + 2;\n        if (pdVar14 <= pdVar12) goto LAB_001190c6;\n        dVar13 = *pdVar12;\n      }\n      puVar3 = section->start;\n      pcVar7 = (char *)dcgettext(0,\n                                 "Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);\n      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar3);\n    }" if (parenthesized_expression "(__ptr < pdVar14)" ( (binary_expression "__ptr < pdVar14" identifier < identifier) )) (compound_statement "{\n      dVar13 = *__ptr;\n      pdVar12 = __ptr;\n      while (dVar11 != dVar13) {\n        pdVar12 = pdVar12 + 2;\n        if (pdVar14 <= pdVar12) goto LAB_001190c6;\n        dVar13 = *pdVar12;\n      }\n      puVar3 = section->start;\n      pcVar7 = (char *)dcgettext(0,\n                                 "Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);\n      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar3);\n    }" { (expression_statement "dVar13 = *__ptr;" (assignment_expression "dVar13 = *__ptr" identifier = (pointer_expression "*__ptr" * identifier)) ;) (expression_statement "pdVar12 = __ptr;" (assignment_expression "pdVar12 = __ptr" identifier = identifier) ;) (while_statement "while (dVar11 != dVar13) {\n        pdVar12 = pdVar12 + 2;\n        if (pdVar14 <= pdVar12) goto LAB_001190c6;\n        dVar13 = *pdVar12;\n      }" while (parenthesized_expression "(dVar11 != dVar13)" ( (binary_expression "dVar11 != dVar13" identifier != identifier) )) (compound_statement "{\n        pdVar12 = pdVar12 + 2;\n        if (pdVar14 <= pdVar12) goto LAB_001190c6;\n        dVar13 = *pdVar12;\n      }" { (expression_statement "pdVar12 = pdVar12 + 2;" (assignment_expression "pdVar12 = pdVar12 + 2" identifier = (binary_expression "pdVar12 + 2" identifier + number_literal)) ;) (if_statement "if (pdVar14 <= pdVar12) goto LAB_001190c6;" if (parenthesized_expression "(pdVar14 <= pdVar12)" ( (binary_expression "pdVar14 <= pdVar12" identifier <= identifier) )) (goto_statement "goto LAB_001190c6;" goto statement_identifier ;)) (expression_statement "dVar13 = *pdVar12;" (assignment_expression "dVar13 = *pdVar12" identifier = (pointer_expression "*pdVar12" * identifier)) ;) })) (expression_statement "puVar3 = section->start;" (assignment_expression "puVar3 = section->start" identifier = (field_expression "section->start" identifier -> field_identifier)) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,\n                                 "Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,\n                                 "Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                 "Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                 "Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5)" identifier (argument_list "(0,\n                                 "Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5)" ( number_literal , (string_literal ""Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar7,dVar11,(long)piVar2 - (long)puVar3);" (call_expression "warn(pcVar7,dVar11,(long)piVar2 - (long)puVar3)" identifier (argument_list "(pcVar7,dVar11,(long)piVar2 - (long)puVar3)" ( identifier , identifier , (binary_expression "(long)piVar2 - (long)puVar3" (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)puVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) ;) })) (labeled_statement "LAB_001190c6:\n    pdVar14[1] = (dwarf_vma)puVar27;" statement_identifier : (expression_statement "pdVar14[1] = (dwarf_vma)puVar27;" (assignment_expression "pdVar14[1] = (dwarf_vma)puVar27" (subscript_expression "pdVar14[1]" identifier [ number_literal ]) = (cast_expression "(dwarf_vma)puVar27" ( (type_descriptor "dwarf_vma" type_identifier) ) identifier)) ;)) (expression_statement "*pdVar14 = dVar11;" (assignment_expression "*pdVar14 = dVar11" (pointer_expression "*pdVar14" * identifier) = identifier) ;) (expression_statement "uVar6 = uVar6 + 1;" (assignment_expression "uVar6 = uVar6 + 1" identifier = (binary_expression "uVar6 + 1" identifier + number_literal)) ;) (expression_statement "read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);" (call_expression "read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30)" identifier (argument_list "(puVar27,&bytes_read,0,(uchar *)piVar30)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)piVar30" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "puVar27 = puVar27 + bytes_read;" (assignment_expression "puVar27 = puVar27 + bytes_read" identifier = (binary_expression "puVar27 + bytes_read" identifier + identifier)) ;) (do_statement "do {\n      puVar23 = &bytes_read;\n      dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n      uVar8 = (ulong)bytes_read;\n      dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n      puVar27 = puVar27 + uVar8 + bytes_read;\n    } while (dVar13 != 0 || dVar11 != 0);" do (compound_statement "{\n      puVar23 = &bytes_read;\n      dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n      uVar8 = (ulong)bytes_read;\n      dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n      puVar27 = puVar27 + uVar8 + bytes_read;\n    }" { (expression_statement "puVar23 = &bytes_read;" (assignment_expression "puVar23 = &bytes_read" identifier = (pointer_expression "&bytes_read" & identifier)) ;) (expression_statement "dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);" (assignment_expression "dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30)" identifier = (call_expression "read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30)" identifier (argument_list "(puVar27,&bytes_read,0,(uchar *)piVar30)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)piVar30" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "uVar8 = (ulong)bytes_read;" (assignment_expression "uVar8 = (ulong)bytes_read" identifier = (cast_expression "(ulong)bytes_read" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);" (assignment_expression "dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30)" identifier = (call_expression "read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30)" identifier (argument_list "(puVar27 + uVar8,puVar23,0,(uchar *)piVar30)" ( (binary_expression "puVar27 + uVar8" identifier + identifier) , identifier , number_literal , (cast_expression "(uchar *)piVar30" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "puVar27 = puVar27 + uVar8 + bytes_read;" (assignment_expression "puVar27 = puVar27 + uVar8 + bytes_read" identifier = (binary_expression "puVar27 + uVar8 + bytes_read" (binary_expression "puVar27 + uVar8" identifier + identifier) + identifier)) ;) }) while (parenthesized_expression "(dVar13 != 0 || dVar11 != 0)" ( (binary_expression "dVar13 != 0 || dVar11 != 0" (binary_expression "dVar13 != 0" identifier != number_literal) || (binary_expression "dVar11 != 0" identifier != number_literal)) )) ;) })) (expression_statement "pcVar7 = (char *)dcgettext(0,"\nSymbol table:\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"\nSymbol table:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\nSymbol table:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\nSymbol table:\n",5)" identifier (argument_list "(0,"\nSymbol table:\n",5)" ( number_literal , (string_literal ""\nSymbol table:\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7);" (call_expression "printf(pcVar7)" identifier (argument_list "(pcVar7)" ( identifier ))) ;) (if_statement "if ((int)local_a0 != 0) {\n    local_90 = 0;\n    local_84 = 0;\n    uVar5 = (int)local_a0 - 1;\n    do {\n      uVar8 = (ulong)local_84;\n      lVar26 = uVar8 + local_88;\n      piVar29 = (int *)((long)puVar17 + uVar8 + local_a8);\n      uVar18 = local_88;\n      if (((int *)((long)puVar17 + lVar26 + local_a8) < local_c8) ||\n         ((eVar10 = 0, piVar29 < local_c8 && (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar10 = (*byte_get)((uchar *)piVar29,uVar18);\n      }\n      piVar29 = (int *)((long)puVar17 + uVar8 + lVar4);\n      uVar18 = local_88;\n      if (((int *)((long)puVar17 + lVar26 + lVar4) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 &&\n          (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar16 = (*byte_get)((uchar *)piVar29,uVar18);\n        local_98 = (int *)(eVar16 + (long)piVar30);\n      }\n      puVar27 = fetch_indirect_string(eVar10);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar17[local_90],puVar27);\n      uVar18 = 0xfffffffe;\n      local_a0 = 0xffffffffffffffff;\n      piVar29 = local_98;\n      while( true ) {\n        while (dVar11 = read_leb128((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8),\n              uVar18 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = dVar11;\n          uVar18 = 0;\n        }\n        if (dVar11 == 0) goto LAB_001193b3;\n        uVar8 = (ulong)bytes_read;\n        if (-1 < (int)uVar18) {\n          if ((uVar18 != 0) || (puVar22 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar22 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar22,dVar11);\n        }\n        if (__ptr + uVar6 * 2 <= __ptr) break;\n        dVar13 = *__ptr;\n        pdVar14 = __ptr;\n        while (dVar11 != dVar13) {\n          pdVar14 = pdVar14 + 2;\n          if (__ptr + uVar6 * 2 <= pdVar14) goto LAB_00119382;\n          dVar13 = *pdVar14;\n        }\n        puVar27 = (uchar *)pdVar14[1];\n        dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n        puVar27 = puVar27 + bytes_read;\n        if (-1 < (int)uVar18) {\n          pcVar7 = get_TAG_name(dVar11);\n          printf(" %s",pcVar7);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar8);\n        while( true ) {\n          puVar23 = &bytes_read;\n          dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n          uVar8 = (ulong)bytes_read;\n          dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n          puVar27 = puVar27 + uVar8 + bytes_read;\n          if (dVar13 == 0 && dVar11 == 0) break;\n          if (-1 < (int)uVar18) {\n            puVar15 = get_DW_IDX_name((uint)dVar11);\n            if (puVar15 == (char *)0x0) {\n              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(buffer_10768,100,pcVar7,dVar11);\n              puVar15 = buffer_10768;\n            }\n            printf(" %s",puVar15);\n          }\n          piVar29 = (int *)read_and_display_attr_value\n                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=');\n        }\n        uVar18 = uVar18 + 1;\n      }\nLAB_00119382:\n      puVar27 = section->start;\n      pcVar7 = (char *)dcgettext(0,\n                                 "Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);\n      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar27);\nLAB_001193b3:\n      if ((int)uVar18 < 1) {\n        pcVar7 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar7);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar5;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }" if (parenthesized_expression "((int)local_a0 != 0)" ( (binary_expression "(int)local_a0 != 0" (cast_expression "(int)local_a0" ( (type_descriptor "int" primitive_type) ) identifier) != number_literal) )) (compound_statement "{\n    local_90 = 0;\n    local_84 = 0;\n    uVar5 = (int)local_a0 - 1;\n    do {\n      uVar8 = (ulong)local_84;\n      lVar26 = uVar8 + local_88;\n      piVar29 = (int *)((long)puVar17 + uVar8 + local_a8);\n      uVar18 = local_88;\n      if (((int *)((long)puVar17 + lVar26 + local_a8) < local_c8) ||\n         ((eVar10 = 0, piVar29 < local_c8 && (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar10 = (*byte_get)((uchar *)piVar29,uVar18);\n      }\n      piVar29 = (int *)((long)puVar17 + uVar8 + lVar4);\n      uVar18 = local_88;\n      if (((int *)((long)puVar17 + lVar26 + lVar4) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 &&\n          (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar16 = (*byte_get)((uchar *)piVar29,uVar18);\n        local_98 = (int *)(eVar16 + (long)piVar30);\n      }\n      puVar27 = fetch_indirect_string(eVar10);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar17[local_90],puVar27);\n      uVar18 = 0xfffffffe;\n      local_a0 = 0xffffffffffffffff;\n      piVar29 = local_98;\n      while( true ) {\n        while (dVar11 = read_leb128((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8),\n              uVar18 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = dVar11;\n          uVar18 = 0;\n        }\n        if (dVar11 == 0) goto LAB_001193b3;\n        uVar8 = (ulong)bytes_read;\n        if (-1 < (int)uVar18) {\n          if ((uVar18 != 0) || (puVar22 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar22 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar22,dVar11);\n        }\n        if (__ptr + uVar6 * 2 <= __ptr) break;\n        dVar13 = *__ptr;\n        pdVar14 = __ptr;\n        while (dVar11 != dVar13) {\n          pdVar14 = pdVar14 + 2;\n          if (__ptr + uVar6 * 2 <= pdVar14) goto LAB_00119382;\n          dVar13 = *pdVar14;\n        }\n        puVar27 = (uchar *)pdVar14[1];\n        dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n        puVar27 = puVar27 + bytes_read;\n        if (-1 < (int)uVar18) {\n          pcVar7 = get_TAG_name(dVar11);\n          printf(" %s",pcVar7);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar8);\n        while( true ) {\n          puVar23 = &bytes_read;\n          dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n          uVar8 = (ulong)bytes_read;\n          dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n          puVar27 = puVar27 + uVar8 + bytes_read;\n          if (dVar13 == 0 && dVar11 == 0) break;\n          if (-1 < (int)uVar18) {\n            puVar15 = get_DW_IDX_name((uint)dVar11);\n            if (puVar15 == (char *)0x0) {\n              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(buffer_10768,100,pcVar7,dVar11);\n              puVar15 = buffer_10768;\n            }\n            printf(" %s",puVar15);\n          }\n          piVar29 = (int *)read_and_display_attr_value\n                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=');\n        }\n        uVar18 = uVar18 + 1;\n      }\nLAB_00119382:\n      puVar27 = section->start;\n      pcVar7 = (char *)dcgettext(0,\n                                 "Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);\n      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar27);\nLAB_001193b3:\n      if ((int)uVar18 < 1) {\n        pcVar7 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar7);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar5;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }" { (expression_statement "local_90 = 0;" (assignment_expression "local_90 = 0" identifier = number_literal) ;) (expression_statement "local_84 = 0;" (assignment_expression "local_84 = 0" identifier = number_literal) ;) (expression_statement "uVar5 = (int)local_a0 - 1;" (assignment_expression "uVar5 = (int)local_a0 - 1" identifier = (binary_expression "(int)local_a0 - 1" (cast_expression "(int)local_a0" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal)) ;) (do_statement "do {\n      uVar8 = (ulong)local_84;\n      lVar26 = uVar8 + local_88;\n      piVar29 = (int *)((long)puVar17 + uVar8 + local_a8);\n      uVar18 = local_88;\n      if (((int *)((long)puVar17 + lVar26 + local_a8) < local_c8) ||\n         ((eVar10 = 0, piVar29 < local_c8 && (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar10 = (*byte_get)((uchar *)piVar29,uVar18);\n      }\n      piVar29 = (int *)((long)puVar17 + uVar8 + lVar4);\n      uVar18 = local_88;\n      if (((int *)((long)puVar17 + lVar26 + lVar4) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 &&\n          (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar16 = (*byte_get)((uchar *)piVar29,uVar18);\n        local_98 = (int *)(eVar16 + (long)piVar30);\n      }\n      puVar27 = fetch_indirect_string(eVar10);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar17[local_90],puVar27);\n      uVar18 = 0xfffffffe;\n      local_a0 = 0xffffffffffffffff;\n      piVar29 = local_98;\n      while( true ) {\n        while (dVar11 = read_leb128((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8),\n              uVar18 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = dVar11;\n          uVar18 = 0;\n        }\n        if (dVar11 == 0) goto LAB_001193b3;\n        uVar8 = (ulong)bytes_read;\n        if (-1 < (int)uVar18) {\n          if ((uVar18 != 0) || (puVar22 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar22 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar22,dVar11);\n        }\n        if (__ptr + uVar6 * 2 <= __ptr) break;\n        dVar13 = *__ptr;\n        pdVar14 = __ptr;\n        while (dVar11 != dVar13) {\n          pdVar14 = pdVar14 + 2;\n          if (__ptr + uVar6 * 2 <= pdVar14) goto LAB_00119382;\n          dVar13 = *pdVar14;\n        }\n        puVar27 = (uchar *)pdVar14[1];\n        dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n        puVar27 = puVar27 + bytes_read;\n        if (-1 < (int)uVar18) {\n          pcVar7 = get_TAG_name(dVar11);\n          printf(" %s",pcVar7);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar8);\n        while( true ) {\n          puVar23 = &bytes_read;\n          dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n          uVar8 = (ulong)bytes_read;\n          dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n          puVar27 = puVar27 + uVar8 + bytes_read;\n          if (dVar13 == 0 && dVar11 == 0) break;\n          if (-1 < (int)uVar18) {\n            puVar15 = get_DW_IDX_name((uint)dVar11);\n            if (puVar15 == (char *)0x0) {\n              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(buffer_10768,100,pcVar7,dVar11);\n              puVar15 = buffer_10768;\n            }\n            printf(" %s",puVar15);\n          }\n          piVar29 = (int *)read_and_display_attr_value\n                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=');\n        }\n        uVar18 = uVar18 + 1;\n      }\nLAB_00119382:\n      puVar27 = section->start;\n      pcVar7 = (char *)dcgettext(0,\n                                 "Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);\n      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar27);\nLAB_001193b3:\n      if ((int)uVar18 < 1) {\n        pcVar7 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar7);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar5;\n      local_90 = local_90 + 1;\n    } while (bVar31);" do (compound_statement "{\n      uVar8 = (ulong)local_84;\n      lVar26 = uVar8 + local_88;\n      piVar29 = (int *)((long)puVar17 + uVar8 + local_a8);\n      uVar18 = local_88;\n      if (((int *)((long)puVar17 + lVar26 + local_a8) < local_c8) ||\n         ((eVar10 = 0, piVar29 < local_c8 && (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar10 = (*byte_get)((uchar *)piVar29,uVar18);\n      }\n      piVar29 = (int *)((long)puVar17 + uVar8 + lVar4);\n      uVar18 = local_88;\n      if (((int *)((long)puVar17 + lVar26 + lVar4) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 &&\n          (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar16 = (*byte_get)((uchar *)piVar29,uVar18);\n        local_98 = (int *)(eVar16 + (long)piVar30);\n      }\n      puVar27 = fetch_indirect_string(eVar10);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar17[local_90],puVar27);\n      uVar18 = 0xfffffffe;\n      local_a0 = 0xffffffffffffffff;\n      piVar29 = local_98;\n      while( true ) {\n        while (dVar11 = read_leb128((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8),\n              uVar18 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = dVar11;\n          uVar18 = 0;\n        }\n        if (dVar11 == 0) goto LAB_001193b3;\n        uVar8 = (ulong)bytes_read;\n        if (-1 < (int)uVar18) {\n          if ((uVar18 != 0) || (puVar22 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar22 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar22,dVar11);\n        }\n        if (__ptr + uVar6 * 2 <= __ptr) break;\n        dVar13 = *__ptr;\n        pdVar14 = __ptr;\n        while (dVar11 != dVar13) {\n          pdVar14 = pdVar14 + 2;\n          if (__ptr + uVar6 * 2 <= pdVar14) goto LAB_00119382;\n          dVar13 = *pdVar14;\n        }\n        puVar27 = (uchar *)pdVar14[1];\n        dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n        puVar27 = puVar27 + bytes_read;\n        if (-1 < (int)uVar18) {\n          pcVar7 = get_TAG_name(dVar11);\n          printf(" %s",pcVar7);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar8);\n        while( true ) {\n          puVar23 = &bytes_read;\n          dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n          uVar8 = (ulong)bytes_read;\n          dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n          puVar27 = puVar27 + uVar8 + bytes_read;\n          if (dVar13 == 0 && dVar11 == 0) break;\n          if (-1 < (int)uVar18) {\n            puVar15 = get_DW_IDX_name((uint)dVar11);\n            if (puVar15 == (char *)0x0) {\n              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(buffer_10768,100,pcVar7,dVar11);\n              puVar15 = buffer_10768;\n            }\n            printf(" %s",puVar15);\n          }\n          piVar29 = (int *)read_and_display_attr_value\n                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=');\n        }\n        uVar18 = uVar18 + 1;\n      }\nLAB_00119382:\n      puVar27 = section->start;\n      pcVar7 = (char *)dcgettext(0,\n                                 "Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);\n      warn(pcVar7,dVar11,(long)piVar2 - (long)puVar27);\nLAB_001193b3:\n      if ((int)uVar18 < 1) {\n        pcVar7 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar7);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar5;\n      local_90 = local_90 + 1;\n    }" { (expression_statement "uVar8 = (ulong)local_84;" (assignment_expression "uVar8 = (ulong)local_84" identifier = (cast_expression "(ulong)local_84" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "lVar26 = uVar8 + local_88;" (assignment_expression "lVar26 = uVar8 + local_88" identifier = (binary_expression "uVar8 + local_88" identifier + identifier)) ;) (expression_statement "piVar29 = (int *)((long)puVar17 + uVar8 + local_a8);" (assignment_expression "piVar29 = (int *)((long)puVar17 + uVar8 + local_a8)" identifier = (cast_expression "(int *)((long)puVar17 + uVar8 + local_a8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar17 + uVar8 + local_a8)" ( (binary_expression "(long)puVar17 + uVar8 + local_a8" (binary_expression "(long)puVar17 + uVar8" (cast_expression "(long)puVar17" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + identifier) )))) ;) (expression_statement "uVar18 = local_88;" (assignment_expression "uVar18 = local_88" identifier = identifier) ;) (if_statement "if (((int *)((long)puVar17 + lVar26 + local_a8) < local_c8) ||\n         ((eVar10 = 0, piVar29 < local_c8 && (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar10 = (*byte_get)((uchar *)piVar29,uVar18);\n      }" if (parenthesized_expression "(((int *)((long)puVar17 + lVar26 + local_a8) < local_c8) ||\n         ((eVar10 = 0, piVar29 < local_c8 && (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8))))" ( (binary_expression "((int *)((long)puVar17 + lVar26 + local_a8) < local_c8) ||\n         ((eVar10 = 0, piVar29 < local_c8 && (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))" (parenthesized_expression "((int *)((long)puVar17 + lVar26 + local_a8) < local_c8)" ( (binary_expression "(int *)((long)puVar17 + lVar26 + local_a8) < local_c8" (cast_expression "(int *)((long)puVar17 + lVar26 + local_a8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar17 + lVar26 + local_a8)" ( (binary_expression "(long)puVar17 + lVar26 + local_a8" (binary_expression "(long)puVar17 + lVar26" (cast_expression "(long)puVar17" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + identifier) ))) < identifier) )) || (parenthesized_expression "((eVar10 = 0, piVar29 < local_c8 && (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))" ( (parenthesized_expression "(eVar10 = 0, piVar29 < local_c8 && (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8))" ( (comma_expression "eVar10 = 0, piVar29 < local_c8 && (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)" (assignment_expression "eVar10 = 0" identifier = number_literal) , (binary_expression "piVar29 < local_c8 && (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)" (binary_expression "piVar29 < local_c8" identifier < identifier) && (parenthesized_expression "(uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)" ( (comma_expression "uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8" (assignment_expression "uVar18 = iVar20 - (int)piVar29" identifier = (binary_expression "iVar20 - (int)piVar29" identifier - (cast_expression "(int)piVar29" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "uVar18 - 1 < 8" (binary_expression "uVar18 - 1" identifier - number_literal) < number_literal)) )))) )) ))) )) (compound_statement "{\n        eVar10 = (*byte_get)((uchar *)piVar29,uVar18);\n      }" { (expression_statement "eVar10 = (*byte_get)((uchar *)piVar29,uVar18);" (assignment_expression "eVar10 = (*byte_get)((uchar *)piVar29,uVar18)" identifier = (call_expression "(*byte_get)((uchar *)piVar29,uVar18)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)piVar29,uVar18)" ( (cast_expression "(uchar *)piVar29" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) })) (expression_statement "piVar29 = (int *)((long)puVar17 + uVar8 + lVar4);" (assignment_expression "piVar29 = (int *)((long)puVar17 + uVar8 + lVar4)" identifier = (cast_expression "(int *)((long)puVar17 + uVar8 + lVar4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar17 + uVar8 + lVar4)" ( (binary_expression "(long)puVar17 + uVar8 + lVar4" (binary_expression "(long)puVar17 + uVar8" (cast_expression "(long)puVar17" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + identifier) )))) ;) (expression_statement "uVar18 = local_88;" (assignment_expression "uVar18 = local_88" identifier = identifier) ;) (if_statement "if (((int *)((long)puVar17 + lVar26 + lVar4) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 &&\n          (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))) {\n        eVar16 = (*byte_get)((uchar *)piVar29,uVar18);\n        local_98 = (int *)(eVar16 + (long)piVar30);\n      }" if (parenthesized_expression "(((int *)((long)puVar17 + lVar26 + lVar4) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 &&\n          (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8))))" ( (binary_expression "((int *)((long)puVar17 + lVar26 + lVar4) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 &&\n          (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))" (parenthesized_expression "((int *)((long)puVar17 + lVar26 + lVar4) < local_c8)" ( (binary_expression "(int *)((long)puVar17 + lVar26 + lVar4) < local_c8" (cast_expression "(int *)((long)puVar17 + lVar26 + lVar4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar17 + lVar26 + lVar4)" ( (binary_expression "(long)puVar17 + lVar26 + lVar4" (binary_expression "(long)puVar17 + lVar26" (cast_expression "(long)puVar17" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + identifier) ))) < identifier) )) || (parenthesized_expression "((local_98 = piVar30, piVar29 < local_c8 &&\n          (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)))" ( (parenthesized_expression "(local_98 = piVar30, piVar29 < local_c8 &&\n          (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8))" ( (comma_expression "local_98 = piVar30, piVar29 < local_c8 &&\n          (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)" (assignment_expression "local_98 = piVar30" identifier = identifier) , (binary_expression "piVar29 < local_c8 &&\n          (uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)" (binary_expression "piVar29 < local_c8" identifier < identifier) && (parenthesized_expression "(uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8)" ( (comma_expression "uVar18 = iVar20 - (int)piVar29, uVar18 - 1 < 8" (assignment_expression "uVar18 = iVar20 - (int)piVar29" identifier = (binary_expression "iVar20 - (int)piVar29" identifier - (cast_expression "(int)piVar29" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "uVar18 - 1 < 8" (binary_expression "uVar18 - 1" identifier - number_literal) < number_literal)) )))) )) ))) )) (compound_statement "{\n        eVar16 = (*byte_get)((uchar *)piVar29,uVar18);\n        local_98 = (int *)(eVar16 + (long)piVar30);\n      }" { (expression_statement "eVar16 = (*byte_get)((uchar *)piVar29,uVar18);" (assignment_expression "eVar16 = (*byte_get)((uchar *)piVar29,uVar18)" identifier = (call_expression "(*byte_get)((uchar *)piVar29,uVar18)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)piVar29,uVar18)" ( (cast_expression "(uchar *)piVar29" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) (expression_statement "local_98 = (int *)(eVar16 + (long)piVar30);" (assignment_expression "local_98 = (int *)(eVar16 + (long)piVar30)" identifier = (cast_expression "(int *)(eVar16 + (long)piVar30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(eVar16 + (long)piVar30)" ( (binary_expression "eVar16 + (long)piVar30" identifier + (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) ;) })) (expression_statement "puVar27 = fetch_indirect_string(eVar10);" (assignment_expression "puVar27 = fetch_indirect_string(eVar10)" identifier = (call_expression "fetch_indirect_string(eVar10)" identifier (argument_list "(eVar10)" ( identifier )))) ;) (expression_statement "printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar17[local_90],puVar27);" (call_expression "printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar17[local_90],puVar27)" identifier (argument_list "("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar17[local_90],puVar27)" ( (string_literal ""[%3u] #%08x %s:"" " string_content ") , (binary_expression "local_90 & 0xffffffff" identifier & number_literal) , (cast_expression "(ulong)puVar17[local_90]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar17[local_90]" identifier [ identifier ])) , identifier ))) ;) (expression_statement "uVar18 = 0xfffffffe;" (assignment_expression "uVar18 = 0xfffffffe" identifier = number_literal) ;) (expression_statement "local_a0 = 0xffffffffffffffff;" (assignment_expression "local_a0 = 0xffffffffffffffff" identifier = number_literal) ;) (expression_statement "piVar29 = local_98;" (assignment_expression "piVar29 = local_98" identifier = identifier) ;) (while_statement "while( true ) {\n        while (dVar11 = read_leb128((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8),\n              uVar18 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = dVar11;\n          uVar18 = 0;\n        }\n        if (dVar11 == 0) goto LAB_001193b3;\n        uVar8 = (ulong)bytes_read;\n        if (-1 < (int)uVar18) {\n          if ((uVar18 != 0) || (puVar22 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar22 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar22,dVar11);\n        }\n        if (__ptr + uVar6 * 2 <= __ptr) break;\n        dVar13 = *__ptr;\n        pdVar14 = __ptr;\n        while (dVar11 != dVar13) {\n          pdVar14 = pdVar14 + 2;\n          if (__ptr + uVar6 * 2 <= pdVar14) goto LAB_00119382;\n          dVar13 = *pdVar14;\n        }\n        puVar27 = (uchar *)pdVar14[1];\n        dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n        puVar27 = puVar27 + bytes_read;\n        if (-1 < (int)uVar18) {\n          pcVar7 = get_TAG_name(dVar11);\n          printf(" %s",pcVar7);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar8);\n        while( true ) {\n          puVar23 = &bytes_read;\n          dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n          uVar8 = (ulong)bytes_read;\n          dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n          puVar27 = puVar27 + uVar8 + bytes_read;\n          if (dVar13 == 0 && dVar11 == 0) break;\n          if (-1 < (int)uVar18) {\n            puVar15 = get_DW_IDX_name((uint)dVar11);\n            if (puVar15 == (char *)0x0) {\n              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(buffer_10768,100,pcVar7,dVar11);\n              puVar15 = buffer_10768;\n            }\n            printf(" %s",puVar15);\n          }\n          piVar29 = (int *)read_and_display_attr_value\n                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=');\n        }\n        uVar18 = uVar18 + 1;\n      }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n        while (dVar11 = read_leb128((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8),\n              uVar18 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = dVar11;\n          uVar18 = 0;\n        }\n        if (dVar11 == 0) goto LAB_001193b3;\n        uVar8 = (ulong)bytes_read;\n        if (-1 < (int)uVar18) {\n          if ((uVar18 != 0) || (puVar22 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar22 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar22,dVar11);\n        }\n        if (__ptr + uVar6 * 2 <= __ptr) break;\n        dVar13 = *__ptr;\n        pdVar14 = __ptr;\n        while (dVar11 != dVar13) {\n          pdVar14 = pdVar14 + 2;\n          if (__ptr + uVar6 * 2 <= pdVar14) goto LAB_00119382;\n          dVar13 = *pdVar14;\n        }\n        puVar27 = (uchar *)pdVar14[1];\n        dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n        puVar27 = puVar27 + bytes_read;\n        if (-1 < (int)uVar18) {\n          pcVar7 = get_TAG_name(dVar11);\n          printf(" %s",pcVar7);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar8);\n        while( true ) {\n          puVar23 = &bytes_read;\n          dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n          uVar8 = (ulong)bytes_read;\n          dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n          puVar27 = puVar27 + uVar8 + bytes_read;\n          if (dVar13 == 0 && dVar11 == 0) break;\n          if (-1 < (int)uVar18) {\n            puVar15 = get_DW_IDX_name((uint)dVar11);\n            if (puVar15 == (char *)0x0) {\n              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(buffer_10768,100,pcVar7,dVar11);\n              puVar15 = buffer_10768;\n            }\n            printf(" %s",puVar15);\n          }\n          piVar29 = (int *)read_and_display_attr_value\n                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=');\n        }\n        uVar18 = uVar18 + 1;\n      }" { (while_statement "while (dVar11 = read_leb128((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8),\n              uVar18 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = dVar11;\n          uVar18 = 0;\n        }" while (parenthesized_expression "(dVar11 = read_leb128((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8),\n              uVar18 == 0xffffffff)" ( (comma_expression "dVar11 = read_leb128((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8),\n              uVar18 == 0xffffffff" (assignment_expression "dVar11 = read_leb128((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8)" identifier = (call_expression "read_leb128((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8)" identifier (argument_list "((uchar *)piVar29,&bytes_read,0,(uchar *)local_c8)" ( (cast_expression "(uchar *)piVar29" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)local_c8" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) , (binary_expression "uVar18 == 0xffffffff" identifier == number_literal)) )) (compound_statement "{\n          piVar29 = local_98;\n          local_a0 = dVar11;\n          uVar18 = 0;\n        }" { (expression_statement "piVar29 = local_98;" (assignment_expression "piVar29 = local_98" identifier = identifier) ;) (expression_statement "local_a0 = dVar11;" (assignment_expression "local_a0 = dVar11" identifier = identifier) ;) (expression_statement "uVar18 = 0;" (assignment_expression "uVar18 = 0" identifier = number_literal) ;) })) (if_statement "if (dVar11 == 0) goto LAB_001193b3;" if (parenthesized_expression "(dVar11 == 0)" ( (binary_expression "dVar11 == 0" identifier == number_literal) )) (goto_statement "goto LAB_001193b3;" goto statement_identifier ;)) (expression_statement "uVar8 = (ulong)bytes_read;" (assignment_expression "uVar8 = (ulong)bytes_read" identifier = (cast_expression "(ulong)bytes_read" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (if_statement "if (-1 < (int)uVar18) {\n          if ((uVar18 != 0) || (puVar22 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar22 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar22,dVar11);\n        }" if (parenthesized_expression "(-1 < (int)uVar18)" ( (binary_expression "-1 < (int)uVar18" number_literal < (cast_expression "(int)uVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n          if ((uVar18 != 0) || (puVar22 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar22 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar22,dVar11);\n        }" { (if_statement "if ((uVar18 != 0) || (puVar22 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar22 = &DAT_00142aab;\n          }" if (parenthesized_expression "((uVar18 != 0) || (puVar22 = &DAT_0013d6b7, local_a0 != 0))" ( (binary_expression "(uVar18 != 0) || (puVar22 = &DAT_0013d6b7, local_a0 != 0)" (parenthesized_expression "(uVar18 != 0)" ( (binary_expression "uVar18 != 0" identifier != number_literal) )) || (parenthesized_expression "(puVar22 = &DAT_0013d6b7, local_a0 != 0)" ( (comma_expression "puVar22 = &DAT_0013d6b7, local_a0 != 0" (assignment_expression "puVar22 = &DAT_0013d6b7" identifier = (pointer_expression "&DAT_0013d6b7" & identifier)) , (binary_expression "local_a0 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n            puVar22 = &DAT_00142aab;\n          }" { (expression_statement "puVar22 = &DAT_00142aab;" (assignment_expression "puVar22 = &DAT_00142aab" identifier = (pointer_expression "&DAT_00142aab" & identifier)) ;) })) (expression_statement "printf("%s<%lu>",puVar22,dVar11);" (call_expression "printf("%s<%lu>",puVar22,dVar11)" identifier (argument_list "("%s<%lu>",puVar22,dVar11)" ( (string_literal ""%s<%lu>"" " string_content ") , identifier , identifier ))) ;) })) (if_statement "if (__ptr + uVar6 * 2 <= __ptr) break;" if (parenthesized_expression "(__ptr + uVar6 * 2 <= __ptr)" ( (binary_expression "__ptr + uVar6 * 2 <= __ptr" (binary_expression "__ptr + uVar6 * 2" identifier + (binary_expression "uVar6 * 2" identifier * number_literal)) <= identifier) )) (break_statement "break;" break ;)) (expression_statement "dVar13 = *__ptr;" (assignment_expression "dVar13 = *__ptr" identifier = (pointer_expression "*__ptr" * identifier)) ;) (expression_statement "pdVar14 = __ptr;" (assignment_expression "pdVar14 = __ptr" identifier = identifier) ;) (while_statement "while (dVar11 != dVar13) {\n          pdVar14 = pdVar14 + 2;\n          if (__ptr + uVar6 * 2 <= pdVar14) goto LAB_00119382;\n          dVar13 = *pdVar14;\n        }" while (parenthesized_expression "(dVar11 != dVar13)" ( (binary_expression "dVar11 != dVar13" identifier != identifier) )) (compound_statement "{\n          pdVar14 = pdVar14 + 2;\n          if (__ptr + uVar6 * 2 <= pdVar14) goto LAB_00119382;\n          dVar13 = *pdVar14;\n        }" { (expression_statement "pdVar14 = pdVar14 + 2;" (assignment_expression "pdVar14 = pdVar14 + 2" identifier = (binary_expression "pdVar14 + 2" identifier + number_literal)) ;) (if_statement "if (__ptr + uVar6 * 2 <= pdVar14) goto LAB_00119382;" if (parenthesized_expression "(__ptr + uVar6 * 2 <= pdVar14)" ( (binary_expression "__ptr + uVar6 * 2 <= pdVar14" (binary_expression "__ptr + uVar6 * 2" identifier + (binary_expression "uVar6 * 2" identifier * number_literal)) <= identifier) )) (goto_statement "goto LAB_00119382;" goto statement_identifier ;)) (expression_statement "dVar13 = *pdVar14;" (assignment_expression "dVar13 = *pdVar14" identifier = (pointer_expression "*pdVar14" * identifier)) ;) })) (expression_statement "puVar27 = (uchar *)pdVar14[1];" (assignment_expression "puVar27 = (uchar *)pdVar14[1]" identifier = (cast_expression "(uchar *)pdVar14[1]" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "pdVar14[1]" identifier [ number_literal ]))) ;) (expression_statement "dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);" (assignment_expression "dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30)" identifier = (call_expression "read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30)" identifier (argument_list "(puVar27,&bytes_read,0,(uchar *)piVar30)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)piVar30" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "puVar27 = puVar27 + bytes_read;" (assignment_expression "puVar27 = puVar27 + bytes_read" identifier = (binary_expression "puVar27 + bytes_read" identifier + identifier)) ;) (if_statement "if (-1 < (int)uVar18) {\n          pcVar7 = get_TAG_name(dVar11);\n          printf(" %s",pcVar7);\n        }" if (parenthesized_expression "(-1 < (int)uVar18)" ( (binary_expression "-1 < (int)uVar18" number_literal < (cast_expression "(int)uVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n          pcVar7 = get_TAG_name(dVar11);\n          printf(" %s",pcVar7);\n        }" { (expression_statement "pcVar7 = get_TAG_name(dVar11);" (assignment_expression "pcVar7 = get_TAG_name(dVar11)" identifier = (call_expression "get_TAG_name(dVar11)" identifier (argument_list "(dVar11)" ( identifier )))) ;) (expression_statement "printf(" %s",pcVar7);" (call_expression "printf(" %s",pcVar7)" identifier (argument_list "(" %s",pcVar7)" ( (string_literal "" %s"" " string_content ") , identifier ))) ;) })) (expression_statement "piVar29 = (int *)((long)piVar29 + uVar8);" (assignment_expression "piVar29 = (int *)((long)piVar29 + uVar8)" identifier = (cast_expression "(int *)((long)piVar29 + uVar8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar29 + uVar8)" ( (binary_expression "(long)piVar29 + uVar8" (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) )))) ;) (while_statement "while( true ) {\n          puVar23 = &bytes_read;\n          dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n          uVar8 = (ulong)bytes_read;\n          dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n          puVar27 = puVar27 + uVar8 + bytes_read;\n          if (dVar13 == 0 && dVar11 == 0) break;\n          if (-1 < (int)uVar18) {\n            puVar15 = get_DW_IDX_name((uint)dVar11);\n            if (puVar15 == (char *)0x0) {\n              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(buffer_10768,100,pcVar7,dVar11);\n              puVar15 = buffer_10768;\n            }\n            printf(" %s",puVar15);\n          }\n          piVar29 = (int *)read_and_display_attr_value\n                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=');\n        }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n          puVar23 = &bytes_read;\n          dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);\n          uVar8 = (ulong)bytes_read;\n          dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);\n          puVar27 = puVar27 + uVar8 + bytes_read;\n          if (dVar13 == 0 && dVar11 == 0) break;\n          if (-1 < (int)uVar18) {\n            puVar15 = get_DW_IDX_name((uint)dVar11);\n            if (puVar15 == (char *)0x0) {\n              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(buffer_10768,100,pcVar7,dVar11);\n              puVar15 = buffer_10768;\n            }\n            printf(" %s",puVar15);\n          }\n          piVar29 = (int *)read_and_display_attr_value\n                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=');\n        }" { (expression_statement "puVar23 = &bytes_read;" (assignment_expression "puVar23 = &bytes_read" identifier = (pointer_expression "&bytes_read" & identifier)) ;) (expression_statement "dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30);" (assignment_expression "dVar11 = read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30)" identifier = (call_expression "read_leb128(puVar27,&bytes_read,0,(uchar *)piVar30)" identifier (argument_list "(puVar27,&bytes_read,0,(uchar *)piVar30)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)piVar30" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "uVar8 = (ulong)bytes_read;" (assignment_expression "uVar8 = (ulong)bytes_read" identifier = (cast_expression "(ulong)bytes_read" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30);" (assignment_expression "dVar13 = read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30)" identifier = (call_expression "read_leb128(puVar27 + uVar8,puVar23,0,(uchar *)piVar30)" identifier (argument_list "(puVar27 + uVar8,puVar23,0,(uchar *)piVar30)" ( (binary_expression "puVar27 + uVar8" identifier + identifier) , identifier , number_literal , (cast_expression "(uchar *)piVar30" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "puVar27 = puVar27 + uVar8 + bytes_read;" (assignment_expression "puVar27 = puVar27 + uVar8 + bytes_read" identifier = (binary_expression "puVar27 + uVar8 + bytes_read" (binary_expression "puVar27 + uVar8" identifier + identifier) + identifier)) ;) (if_statement "if (dVar13 == 0 && dVar11 == 0) break;" if (parenthesized_expression "(dVar13 == 0 && dVar11 == 0)" ( (binary_expression "dVar13 == 0 && dVar11 == 0" (binary_expression "dVar13 == 0" identifier == number_literal) && (binary_expression "dVar11 == 0" identifier == number_literal)) )) (break_statement "break;" break ;)) (if_statement "if (-1 < (int)uVar18) {\n            puVar15 = get_DW_IDX_name((uint)dVar11);\n            if (puVar15 == (char *)0x0) {\n              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(buffer_10768,100,pcVar7,dVar11);\n              puVar15 = buffer_10768;\n            }\n            printf(" %s",puVar15);\n          }" if (parenthesized_expression "(-1 < (int)uVar18)" ( (binary_expression "-1 < (int)uVar18" number_literal < (cast_expression "(int)uVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            puVar15 = get_DW_IDX_name((uint)dVar11);\n            if (puVar15 == (char *)0x0) {\n              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(buffer_10768,100,pcVar7,dVar11);\n              puVar15 = buffer_10768;\n            }\n            printf(" %s",puVar15);\n          }" { (expression_statement "puVar15 = get_DW_IDX_name((uint)dVar11);" (assignment_expression "puVar15 = get_DW_IDX_name((uint)dVar11)" identifier = (call_expression "get_DW_IDX_name((uint)dVar11)" identifier (argument_list "((uint)dVar11)" ( (cast_expression "(uint)dVar11" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (if_statement "if (puVar15 == (char *)0x0) {\n              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(buffer_10768,100,pcVar7,dVar11);\n              puVar15 = buffer_10768;\n            }" if (parenthesized_expression "(puVar15 == (char *)0x0)" ( (binary_expression "puVar15 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(buffer_10768,100,pcVar7,dVar11);\n              puVar15 = buffer_10768;\n            }" { (expression_statement "pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"Unknown IDX value: %lx",5)" identifier = (cast_expression "(char *)dcgettext(0,"Unknown IDX value: %lx",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Unknown IDX value: %lx",5)" identifier (argument_list "(0,"Unknown IDX value: %lx",5)" ( number_literal , (string_literal ""Unknown IDX value: %lx"" " string_content ") , number_literal ))))) ;) (expression_statement "snprintf(buffer_10768,100,pcVar7,dVar11);" (call_expression "snprintf(buffer_10768,100,pcVar7,dVar11)" identifier (argument_list "(buffer_10768,100,pcVar7,dVar11)" ( identifier , number_literal , identifier , identifier ))) ;) (expression_statement "puVar15 = buffer_10768;" (assignment_expression "puVar15 = buffer_10768" identifier = identifier) ;) })) (expression_statement "printf(" %s",puVar15);" (call_expression "printf(" %s",puVar15)" identifier (argument_list "(" %s",puVar15)" ( (string_literal "" %s"" " string_content ") , identifier ))) ;) })) (expression_statement "piVar29 = (int *)read_and_display_attr_value\n                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=');" (assignment_expression "piVar29 = (int *)read_and_display_attr_value\n                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=')" identifier = (cast_expression "(int *)read_and_display_attr_value\n                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=')" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "read_and_display_attr_value\n                                     (0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=')" identifier (argument_list "(0,dVar13,0,(uchar *)piVar29,(uchar *)local_c8,0,0,\n                                      (ulong)local_88,5,(debug_info *)0x0,uVar18 >> 0x1f,\n                                      (dwarf_section *)0x0,(cu_tu_set *)0x0,'=')" ( number_literal , identifier , number_literal , (cast_expression "(uchar *)piVar29" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(uchar *)local_c8" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , number_literal , number_literal , (cast_expression "(ulong)local_88" ( (type_descriptor "ulong" type_identifier) ) identifier) , number_literal , (cast_expression "(debug_info *)0x0" ( (type_descriptor "debug_info *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , (binary_expression "uVar18 >> 0x1f" identifier >> number_literal) , (cast_expression "(dwarf_section *)0x0" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , (cast_expression "(cu_tu_set *)0x0" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , (char_literal "'='" ' character ') ))))) ;) })) (expression_statement "uVar18 = uVar18 + 1;" (assignment_expression "uVar18 = uVar18 + 1" identifier = (binary_expression "uVar18 + 1" identifier + number_literal)) ;) })) (labeled_statement "LAB_00119382:\n      puVar27 = section->start;" statement_identifier : (expression_statement "puVar27 = section->start;" (assignment_expression "puVar27 = section->start" identifier = (field_expression "section->start" identifier -> field_identifier)) ;)) (expression_statement "pcVar7 = (char *)dcgettext(0,\n                                 "Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,\n                                 "Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                 "Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                 "Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5)" identifier (argument_list "(0,\n                                 "Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"\n                                 ,5)" ( number_literal , (string_literal ""Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar7,dVar11,(long)piVar2 - (long)puVar27);" (call_expression "warn(pcVar7,dVar11,(long)piVar2 - (long)puVar27)" identifier (argument_list "(pcVar7,dVar11,(long)piVar2 - (long)puVar27)" ( identifier , identifier , (binary_expression "(long)piVar2 - (long)puVar27" (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)puVar27" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) ;) (labeled_statement "LAB_001193b3:\n      if ((int)uVar18 < 1) {\n        pcVar7 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar7);\n      }" statement_identifier : (if_statement "if ((int)uVar18 < 1) {\n        pcVar7 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar7);\n      }" if (parenthesized_expression "((int)uVar18 < 1)" ( (binary_expression "(int)uVar18 < 1" (cast_expression "(int)uVar18" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        pcVar7 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar7);\n      }" { (expression_statement "pcVar7 = (char *)dcgettext(0," <no entries>",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0," <no entries>",5)" identifier = (cast_expression "(char *)dcgettext(0," <no entries>",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," <no entries>",5)" identifier (argument_list "(0," <no entries>",5)" ( number_literal , (string_literal "" <no entries>"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar7);" (call_expression "printf(pcVar7)" identifier (argument_list "(pcVar7)" ( identifier ))) ;) }))) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "local_84 = local_84 + local_88;" (assignment_expression "local_84 = local_84 + local_88" identifier = (binary_expression "local_84 + local_88" identifier + identifier)) ;) (expression_statement "bVar31 = local_90 != uVar5;" (assignment_expression "bVar31 = local_90 != uVar5" identifier = (binary_expression "local_90 != uVar5" identifier != identifier)) ;) (expression_statement "local_90 = local_90 + 1;" (assignment_expression "local_90 = local_90 + 1" identifier = (binary_expression "local_90 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar31)" ( identifier )) ;) })) (expression_statement "free(__ptr);" (call_expression "free(__ptr)" identifier (argument_list "(__ptr)" ( identifier ))) ;) (expression_statement "piVar2 = local_c8;" (assignment_expression "piVar2 = local_c8" identifier = identifier) ;) (goto_statement "goto joined_r0x0011898e;" goto statement_identifier ;) })))
(translation_unit "undefined8 FUN_00118940(long param_1,undefined8 param_2)\n\n{\n  int *piVar1;\n  int *piVar2;\n  int iVar3;\n  byte bVar4;\n  ushort uVar5;\n  short sVar6;\n  uint uVar7;\n  uint uVar8;\n  uint uVar9;\n  ulong uVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  undefined8 uVar14;\n  long *plVar15;\n  long lVar16;\n  long *__ptr;\n  long *plVar17;\n  uint *puVar18;\n  uint *puVar19;\n  uint uVar20;\n  ulong uVar21;\n  long lVar22;\n  undefined *puVar23;\n  int *piVar24;\n  ulong uVar25;\n  long lVar26;\n  long lVar27;\n  int *piVar28;\n  int *piVar29;\n  int *piVar30;\n  bool bVar31;\n  ulong local_d0;\n  int *local_c8;\n  ulong local_c0;\n  ulong local_b8;\n  ulong local_b0;\n  long local_a8;\n  long local_a0;\n  int *local_98;\n  ulong local_90;\n  uint local_88;\n  uint local_84;\n  uint local_3c [3];\n  \n  piVar2 = *(int **)(param_1 + 0x20);\n  piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30));\n  FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18);\n  FUN_0010fed0(10,param_2);\njoined_r0x0011898e:\n  if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }\n  else {\n    uVar12 = 1;\n  }\n  return uVar12;\nLAB_00118eee:\n  piVar29 = piVar29 + uVar21 * 2 + 2;\nLAB_00118ef8:\n  putc(10,stdout);\n  puVar18 = (uint *)(local_90 + (long)piVar29);\n  lVar22 = local_b0 + local_a8;\n  lVar27 = (long)puVar18 + local_b0 + lVar22;\n  piVar30 = (int *)(local_c0 + lVar27);\n  if (local_c8 < piVar30) {\n    lVar22 = *(long *)(param_1 + 0x20);\n    uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);\n    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);\n    return 0;\n  }\n  uVar21 = 0;\n  if (local_b8 != 0) {\n    uVar21 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }\n  uVar10 = 0;\n  lVar26 = 0;\n  pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);\n  printf(pcVar11,uVar21,local_b8);\n  if (local_d0 != 0) {\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar10 = 0;\n    uVar7 = *puVar18;\n    puVar19 = puVar18;\n    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }\n    uVar21 = uVar21 + lVar26;\n  }\n  pcVar11 = (char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5);\n  printf(pcVar11,local_d0,lVar26,uVar10);\n  if (local_d0 != uVar21) {\n                    \n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }\n  local_d0 = 0;\n  uVar21 = 0;\n  __ptr = (long *)0x0;\n  while( true ) {\n    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    if (lVar26 == 0) break;\n    if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar21) {\n                    \n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    plVar17 = __ptr + uVar21 * 2;\n    if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }\nLAB_001190c6:\n    plVar17[1] = lVar27;\n    *plVar17 = lVar26;\n    uVar21 = uVar21 + 1;\n    FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);\n  }\n  pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5);\n  printf(pcVar11);\n  if ((uint)local_a0 != 0) {\n    local_90 = 0;\n    local_84 = 0;\n    uVar7 = (uint)local_a0 - 1;\n    do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }\n  free(__ptr);\n  piVar2 = local_c8;\n  goto joined_r0x0011898e;\n}\n\n" (function_definition "undefined8 FUN_00118940(long param_1,undefined8 param_2)\n\n{\n  int *piVar1;\n  int *piVar2;\n  int iVar3;\n  byte bVar4;\n  ushort uVar5;\n  short sVar6;\n  uint uVar7;\n  uint uVar8;\n  uint uVar9;\n  ulong uVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  undefined8 uVar14;\n  long *plVar15;\n  long lVar16;\n  long *__ptr;\n  long *plVar17;\n  uint *puVar18;\n  uint *puVar19;\n  uint uVar20;\n  ulong uVar21;\n  long lVar22;\n  undefined *puVar23;\n  int *piVar24;\n  ulong uVar25;\n  long lVar26;\n  long lVar27;\n  int *piVar28;\n  int *piVar29;\n  int *piVar30;\n  bool bVar31;\n  ulong local_d0;\n  int *local_c8;\n  ulong local_c0;\n  ulong local_b8;\n  ulong local_b0;\n  long local_a8;\n  long local_a0;\n  int *local_98;\n  ulong local_90;\n  uint local_88;\n  uint local_84;\n  uint local_3c [3];\n  \n  piVar2 = *(int **)(param_1 + 0x20);\n  piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30));\n  FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18);\n  FUN_0010fed0(10,param_2);\njoined_r0x0011898e:\n  if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }\n  else {\n    uVar12 = 1;\n  }\n  return uVar12;\nLAB_00118eee:\n  piVar29 = piVar29 + uVar21 * 2 + 2;\nLAB_00118ef8:\n  putc(10,stdout);\n  puVar18 = (uint *)(local_90 + (long)piVar29);\n  lVar22 = local_b0 + local_a8;\n  lVar27 = (long)puVar18 + local_b0 + lVar22;\n  piVar30 = (int *)(local_c0 + lVar27);\n  if (local_c8 < piVar30) {\n    lVar22 = *(long *)(param_1 + 0x20);\n    uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);\n    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);\n    return 0;\n  }\n  uVar21 = 0;\n  if (local_b8 != 0) {\n    uVar21 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }\n  uVar10 = 0;\n  lVar26 = 0;\n  pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);\n  printf(pcVar11,uVar21,local_b8);\n  if (local_d0 != 0) {\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar10 = 0;\n    uVar7 = *puVar18;\n    puVar19 = puVar18;\n    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }\n    uVar21 = uVar21 + lVar26;\n  }\n  pcVar11 = (char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5);\n  printf(pcVar11,local_d0,lVar26,uVar10);\n  if (local_d0 != uVar21) {\n                    \n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }\n  local_d0 = 0;\n  uVar21 = 0;\n  __ptr = (long *)0x0;\n  while( true ) {\n    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    if (lVar26 == 0) break;\n    if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar21) {\n                    \n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    plVar17 = __ptr + uVar21 * 2;\n    if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }\nLAB_001190c6:\n    plVar17[1] = lVar27;\n    *plVar17 = lVar26;\n    uVar21 = uVar21 + 1;\n    FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);\n  }\n  pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5);\n  printf(pcVar11);\n  if ((uint)local_a0 != 0) {\n    local_90 = 0;\n    local_84 = 0;\n    uVar7 = (uint)local_a0 - 1;\n    do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }\n  free(__ptr);\n  piVar2 = local_c8;\n  goto joined_r0x0011898e;\n}" type_identifier (function_declarator "FUN_00118940(long param_1,undefined8 param_2)" identifier (parameter_list "(long param_1,undefined8 param_2)" ( (parameter_declaration "long param_1" (sized_type_specifier "long" long) identifier) , (parameter_declaration "undefined8 param_2" type_identifier identifier) ))) (compound_statement "{\n  int *piVar1;\n  int *piVar2;\n  int iVar3;\n  byte bVar4;\n  ushort uVar5;\n  short sVar6;\n  uint uVar7;\n  uint uVar8;\n  uint uVar9;\n  ulong uVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  undefined8 uVar14;\n  long *plVar15;\n  long lVar16;\n  long *__ptr;\n  long *plVar17;\n  uint *puVar18;\n  uint *puVar19;\n  uint uVar20;\n  ulong uVar21;\n  long lVar22;\n  undefined *puVar23;\n  int *piVar24;\n  ulong uVar25;\n  long lVar26;\n  long lVar27;\n  int *piVar28;\n  int *piVar29;\n  int *piVar30;\n  bool bVar31;\n  ulong local_d0;\n  int *local_c8;\n  ulong local_c0;\n  ulong local_b8;\n  ulong local_b0;\n  long local_a8;\n  long local_a0;\n  int *local_98;\n  ulong local_90;\n  uint local_88;\n  uint local_84;\n  uint local_3c [3];\n  \n  piVar2 = *(int **)(param_1 + 0x20);\n  piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30));\n  FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18);\n  FUN_0010fed0(10,param_2);\njoined_r0x0011898e:\n  if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }\n  else {\n    uVar12 = 1;\n  }\n  return uVar12;\nLAB_00118eee:\n  piVar29 = piVar29 + uVar21 * 2 + 2;\nLAB_00118ef8:\n  putc(10,stdout);\n  puVar18 = (uint *)(local_90 + (long)piVar29);\n  lVar22 = local_b0 + local_a8;\n  lVar27 = (long)puVar18 + local_b0 + lVar22;\n  piVar30 = (int *)(local_c0 + lVar27);\n  if (local_c8 < piVar30) {\n    lVar22 = *(long *)(param_1 + 0x20);\n    uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);\n    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);\n    return 0;\n  }\n  uVar21 = 0;\n  if (local_b8 != 0) {\n    uVar21 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }\n  uVar10 = 0;\n  lVar26 = 0;\n  pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);\n  printf(pcVar11,uVar21,local_b8);\n  if (local_d0 != 0) {\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar10 = 0;\n    uVar7 = *puVar18;\n    puVar19 = puVar18;\n    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }\n    uVar21 = uVar21 + lVar26;\n  }\n  pcVar11 = (char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5);\n  printf(pcVar11,local_d0,lVar26,uVar10);\n  if (local_d0 != uVar21) {\n                    \n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }\n  local_d0 = 0;\n  uVar21 = 0;\n  __ptr = (long *)0x0;\n  while( true ) {\n    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    if (lVar26 == 0) break;\n    if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar21) {\n                    \n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    plVar17 = __ptr + uVar21 * 2;\n    if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }\nLAB_001190c6:\n    plVar17[1] = lVar27;\n    *plVar17 = lVar26;\n    uVar21 = uVar21 + 1;\n    FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);\n  }\n  pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5);\n  printf(pcVar11);\n  if ((uint)local_a0 != 0) {\n    local_90 = 0;\n    local_84 = 0;\n    uVar7 = (uint)local_a0 - 1;\n    do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }\n  free(__ptr);\n  piVar2 = local_c8;\n  goto joined_r0x0011898e;\n}" { (declaration "int *piVar1;" primitive_type (pointer_declarator "*piVar1" * identifier) ;) (declaration "int *piVar2;" primitive_type (pointer_declarator "*piVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "byte bVar4;" type_identifier identifier ;) (declaration "ushort uVar5;" type_identifier identifier ;) (declaration "short sVar6;" (sized_type_specifier "short" short) identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "ulong uVar10;" type_identifier identifier ;) (declaration "char *pcVar11;" primitive_type (pointer_declarator "*pcVar11" * identifier) ;) (declaration "undefined8 uVar12;" type_identifier identifier ;) (declaration "undefined8 uVar13;" type_identifier identifier ;) (declaration "undefined8 uVar14;" type_identifier identifier ;) (declaration "long *plVar15;" (sized_type_specifier "long" long) (pointer_declarator "*plVar15" * identifier) ;) (declaration "long lVar16;" (sized_type_specifier "long" long) identifier ;) (declaration "long *__ptr;" (sized_type_specifier "long" long) (pointer_declarator "*__ptr" * identifier) ;) (declaration "long *plVar17;" (sized_type_specifier "long" long) (pointer_declarator "*plVar17" * identifier) ;) (declaration "uint *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "uint *puVar19;" type_identifier (pointer_declarator "*puVar19" * identifier) ;) (declaration "uint uVar20;" type_identifier identifier ;) (declaration "ulong uVar21;" type_identifier identifier ;) (declaration "long lVar22;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined *puVar23;" type_identifier (pointer_declarator "*puVar23" * identifier) ;) (declaration "int *piVar24;" primitive_type (pointer_declarator "*piVar24" * identifier) ;) (declaration "ulong uVar25;" type_identifier identifier ;) (declaration "long lVar26;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar27;" (sized_type_specifier "long" long) identifier ;) (declaration "int *piVar28;" primitive_type (pointer_declarator "*piVar28" * identifier) ;) (declaration "int *piVar29;" primitive_type (pointer_declarator "*piVar29" * identifier) ;) (declaration "int *piVar30;" primitive_type (pointer_declarator "*piVar30" * identifier) ;) (declaration "bool bVar31;" primitive_type identifier ;) (declaration "ulong local_d0;" type_identifier identifier ;) (declaration "int *local_c8;" primitive_type (pointer_declarator "*local_c8" * identifier) ;) (declaration "ulong local_c0;" type_identifier identifier ;) (declaration "ulong local_b8;" type_identifier identifier ;) (declaration "ulong local_b0;" type_identifier identifier ;) (declaration "long local_a8;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_a0;" (sized_type_specifier "long" long) identifier ;) (declaration "int *local_98;" primitive_type (pointer_declarator "*local_98" * identifier) ;) (declaration "ulong local_90;" type_identifier identifier ;) (declaration "uint local_88;" type_identifier identifier ;) (declaration "uint local_84;" type_identifier identifier ;) (declaration "uint local_3c [3];" type_identifier (array_declarator "local_3c [3]" identifier [ number_literal ]) ;) (expression_statement "piVar2 = *(int **)(param_1 + 0x20);" (assignment_expression "piVar2 = *(int **)(param_1 + 0x20)" identifier = (pointer_expression "*(int **)(param_1 + 0x20)" * (cast_expression "(int **)(param_1 + 0x20)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) ;) (expression_statement "piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30));" (assignment_expression "piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30))" identifier = (cast_expression "(int *)((long)piVar2 + *(long *)(param_1 + 0x30))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar2 + *(long *)(param_1 + 0x30))" ( (binary_expression "(long)piVar2 + *(long *)(param_1 + 0x30)" (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (pointer_expression "*(long *)(param_1 + 0x30)" * (cast_expression "(long *)(param_1 + 0x30)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) ))))) )))) ;) (expression_statement "FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18);" (call_expression "FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18)" identifier (argument_list "(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18)" ( (pointer_expression "*(undefined8 *)(param_1 + 0x10)" * (cast_expression "(undefined8 *)(param_1 + 0x10)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) )))) , (binary_expression "param_1 + 0x18" identifier + number_literal) ))) ;) (expression_statement "FUN_0010fed0(10,param_2);" (call_expression "FUN_0010fed0(10,param_2)" identifier (argument_list "(10,param_2)" ( number_literal , identifier ))) ;) (labeled_statement "joined_r0x0011898e:\n  if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }\n  else {\n    uVar12 = 1;\n  }" statement_identifier : (if_statement "if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }\n  else {\n    uVar12 = 1;\n  }" if (parenthesized_expression "(piVar2 < piVar28)" ( (binary_expression "piVar2 < piVar28" identifier < identifier) )) (compound_statement "{\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }" { (expression_statement "piVar29 = piVar2 + 1;" (assignment_expression "piVar29 = piVar2 + 1" identifier = (binary_expression "piVar2 + 1" identifier + number_literal)) ;) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" identifier = identifier) ;) (if_statement "if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }" if (parenthesized_expression "(piVar29 < piVar28)" ( (binary_expression "piVar29 < piVar28" identifier < identifier) )) (compound_statement "{\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }" { (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);" statement_identifier : (expression_statement "uVar21 = (*DAT_00159e20)(piVar2,lVar22);" (assignment_expression "uVar21 = (*DAT_00159e20)(piVar2,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar2,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar2,lVar22)" ( identifier , identifier )))) ;)) (expression_statement "local_88 = 4;" (assignment_expression "local_88 = 4" identifier = number_literal) ;) (if_statement "if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }" if (parenthesized_expression "(uVar21 == 0xffffffff)" ( (binary_expression "uVar21 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }" { (expression_statement "piVar30 = piVar2 + 3;" (assignment_expression "piVar30 = piVar2 + 3" identifier = (binary_expression "piVar2 + 3" identifier + number_literal)) ;) (if_statement "if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" if (parenthesized_expression "(piVar30 < piVar28)" ( (binary_expression "piVar30 < piVar28" identifier < identifier) )) (compound_statement "{\n          lVar22 = 8;\n        }" { (expression_statement "lVar22 = 8;" (assignment_expression "lVar22 = 8" identifier = number_literal) ;) }) (else_clause "else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" else (if_statement "if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" if (parenthesized_expression "((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U))" ( (binary_expression "(piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)" (parenthesized_expression "(piVar28 <= piVar29)" ( (binary_expression "piVar28 <= piVar29" identifier <= identifier) )) || (parenthesized_expression "(lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)" ( (comma_expression "lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U" (assignment_expression "lVar22 = (long)piVar28 - (long)piVar29" identifier = (binary_expression "(long)piVar28 - (long)piVar29" (cast_expression "(long)piVar28" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) , (binary_expression "7 < (int)lVar22 - 1U" number_literal < (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal))) ))) )) (compound_statement "{\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" { (expression_statement "local_88 = 8;" (assignment_expression "local_88 = 8" identifier = number_literal) ;) (goto_statement "goto LAB_001189c5;" goto statement_identifier ;) })))) (expression_statement "uVar21 = (*DAT_00159e20)(piVar29,lVar22);" (assignment_expression "uVar21 = (*DAT_00159e20)(piVar29,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar29,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar29,lVar22)" ( identifier , identifier )))) ;) (expression_statement "local_88 = 8;" (assignment_expression "local_88 = 8" identifier = number_literal) ;) })) (expression_statement "local_c8 = (int *)((long)piVar30 + uVar21);" (assignment_expression "local_c8 = (int *)((long)piVar30 + uVar21)" identifier = (cast_expression "(int *)((long)piVar30 + uVar21)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar30 + uVar21)" ( (binary_expression "(long)piVar30 + uVar21" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) )))) ;) (expression_statement "uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);" (assignment_expression "uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20)" identifier = (binary_expression "(long)piVar30 - *(long *)(param_1 + 0x20)" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))))) ;) (expression_statement "uVar10 = uVar25 + uVar21;" (assignment_expression "uVar10 = uVar25 + uVar21" identifier = (binary_expression "uVar25 + uVar21" identifier + identifier)) ;) (if_statement "if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;" if (parenthesized_expression "(!CARRY8(uVar25,uVar21))" ( (unary_expression "!CARRY8(uVar25,uVar21)" ! (call_expression "CARRY8(uVar25,uVar21)" identifier (argument_list "(uVar25,uVar21)" ( identifier , identifier )))) )) (goto_statement "goto LAB_001189d9;" goto statement_identifier ;)) (labeled_statement "LAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);" statement_identifier : (expression_statement "uVar13 = FUN_0010ebb0("x",uVar21,0);" (assignment_expression "uVar13 = FUN_0010ebb0("x",uVar21,0)" identifier = (call_expression "FUN_0010ebb0("x",uVar21,0)" identifier (argument_list "("x",uVar21,0)" ( (string_literal ""x"" " string_content ") , identifier , number_literal )))) ;)) (expression_statement "uVar12 = *(undefined8 *)(param_1 + 0x10);" (assignment_expression "uVar12 = *(undefined8 *)(param_1 + 0x10)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x10)" * (cast_expression "(undefined8 *)(param_1 + 0x10)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "lVar22 = *(long *)(param_1 + 0x20);" (assignment_expression "lVar22 = *(long *)(param_1 + 0x20)" identifier = (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) ;) (expression_statement "uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);" (assignment_expression "uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5)" identifier = (call_expression "dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5)" identifier (argument_list "(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5)" ( number_literal , (string_literal ""Debug info is corrupted, %s header at %#lx has length %s\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);" (call_expression "warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13)" identifier (argument_list "(uVar14,uVar12,(long)piVar2 - lVar22,uVar13)" ( identifier , identifier , (binary_expression "(long)piVar2 - lVar22" (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) , identifier ))) ;) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) }) (else_clause "else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }" else (compound_statement "{\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }" { (expression_statement "lVar22 = (long)piVar28 - (long)piVar2;" (assignment_expression "lVar22 = (long)piVar28 - (long)piVar2" identifier = (binary_expression "(long)piVar28 - (long)piVar2" (cast_expression "(long)piVar28" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) ;) (if_statement "if ((int)lVar22 - 1U < 8) goto LAB_00118a58;" if (parenthesized_expression "((int)lVar22 - 1U < 8)" ( (binary_expression "(int)lVar22 - 1U < 8" (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal) < number_literal) )) (goto_statement "goto LAB_00118a58;" goto statement_identifier ;)) (expression_statement "local_88 = 4;" (assignment_expression "local_88 = 4" identifier = number_literal) ;) (labeled_statement "LAB_001189c5:\n      uVar21 = 0;" statement_identifier : (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;)) (expression_statement "uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);" (assignment_expression "uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20)" identifier = (binary_expression "(long)piVar30 - *(long *)(param_1 + 0x20)" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))))) ;) (expression_statement "local_c8 = piVar30;" (assignment_expression "local_c8 = piVar30" identifier = identifier) ;) (labeled_statement "LAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;" statement_identifier : (if_statement "if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;" if (parenthesized_expression "(*(ulong *)(param_1 + 0x30) < uVar10)" ( (binary_expression "*(ulong *)(param_1 + 0x30) < uVar10" (pointer_expression "*(ulong *)(param_1 + 0x30)" * (cast_expression "(ulong *)(param_1 + 0x30)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) < identifier) )) (goto_statement "goto LAB_00118a9b;" goto statement_identifier ;))) (expression_statement "piVar29 = (int *)((long)piVar30 + 2);" (assignment_expression "piVar29 = (int *)((long)piVar30 + 2)" identifier = (cast_expression "(int *)((long)piVar30 + 2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar30 + 2)" ( (binary_expression "(long)piVar30 + 2" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) (if_statement "if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }" if (parenthesized_expression "(piVar29 < local_c8)" ( (binary_expression "piVar29 < local_c8" identifier < identifier) )) (compound_statement "{\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }" { (expression_statement "uVar10 = 2;" (assignment_expression "uVar10 = 2" identifier = number_literal) ;) (labeled_statement "LAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);" statement_identifier : (expression_statement "uVar5 = (*DAT_00159e20)(piVar30,uVar10);" (assignment_expression "uVar5 = (*DAT_00159e20)(piVar30,uVar10)" identifier = (call_expression "(*DAT_00159e20)(piVar30,uVar10)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30,uVar10)" ( identifier , identifier )))) ;)) (expression_statement "pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Version %ld\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Version %ld\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Version %ld\n",5)" identifier (argument_list "(0,"Version %ld\n",5)" ( number_literal , (string_literal ""Version %ld\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11,(ulong)uVar5);" (call_expression "printf(pcVar11,(ulong)uVar5)" identifier (argument_list "(pcVar11,(ulong)uVar5)" ( identifier , (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (if_statement "if (uVar5 != 5) goto LAB_00118a22;" if (parenthesized_expression "(uVar5 != 5)" ( (binary_expression "uVar5 != 5" identifier != number_literal) )) (goto_statement "goto LAB_00118a22;" goto statement_identifier ;)) (expression_statement "piVar24 = piVar30 + 1;" (assignment_expression "piVar24 = piVar30 + 1" identifier = (binary_expression "piVar30 + 1" identifier + number_literal)) ;) (if_statement "if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }" if (parenthesized_expression "(piVar24 < local_c8)" ( (binary_expression "piVar24 < local_c8" identifier < identifier) )) (compound_statement "{\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }" { (expression_statement "lVar22 = 2;" (assignment_expression "lVar22 = 2" identifier = number_literal) ;) (labeled_statement "LAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);" statement_identifier : (expression_statement "sVar6 = (*DAT_00159e20)(piVar29,lVar22);" (assignment_expression "sVar6 = (*DAT_00159e20)(piVar29,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar29,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar29,lVar22)" ( identifier , identifier )))) ;)) (if_statement "if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }" if (parenthesized_expression "(sVar6 != 0)" ( (binary_expression "sVar6 != 0" identifier != number_literal) )) (compound_statement "{\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }" { (expression_statement "uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)" identifier = (call_expression "dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)" identifier (argument_list "(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)" ( number_literal , (string_literal ""Padding field of .debug_names must be 0 (found 0x%x)\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,sVar6);" (call_expression "warn(uVar12,sVar6)" identifier (argument_list "(uVar12,sVar6)" ( identifier , identifier ))) ;) })) (if_statement "if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;" if (parenthesized_expression "(piVar30 + 2 < local_c8)" ( (binary_expression "piVar30 + 2 < local_c8" (binary_expression "piVar30 + 2" identifier + number_literal) < identifier) )) (compound_statement "{\nLAB_00118b5e:\n            lVar22 = 4;\n          }" { (labeled_statement "LAB_00118b5e:\n            lVar22 = 4;" statement_identifier : (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" identifier = number_literal) ;)) }) (else_clause "else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;" else (if_statement "if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;" if (parenthesized_expression "((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))" ( (binary_expression "(local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U)" (parenthesized_expression "(local_c8 <= piVar24)" ( (binary_expression "local_c8 <= piVar24" identifier <= identifier) )) || (parenthesized_expression "(lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U)" ( (comma_expression "lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U" (assignment_expression "lVar22 = (long)local_c8 - (long)piVar24" identifier = (binary_expression "(long)local_c8 - (long)piVar24" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) , (binary_expression "7 < (int)lVar22 - 1U" number_literal < (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal))) ))) )) (goto_statement "goto LAB_00118b74;" goto statement_identifier ;)))) (expression_statement "uVar7 = (*DAT_00159e20)(piVar24,lVar22);" (assignment_expression "uVar7 = (*DAT_00159e20)(piVar24,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar24,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar24,lVar22)" ( identifier , identifier )))) ;) (if_statement "if (uVar7 == 0) goto LAB_00118b74;" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00118b74;" goto statement_identifier ;)) }) (else_clause "else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }" else (compound_statement "{\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }" { (if_statement "if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;" if (parenthesized_expression "((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))" ( (binary_expression "(piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8)" (parenthesized_expression "(piVar29 < local_c8)" ( (binary_expression "piVar29 < local_c8" identifier < identifier) )) && (parenthesized_expression "(lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8)" ( (comma_expression "lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8" (assignment_expression "lVar22 = uVar21 - 2" identifier = (binary_expression "uVar21 - 2" identifier - number_literal)) , (binary_expression "(int)lVar22 - 1U < 8" (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00119876;" goto statement_identifier ;)) (if_statement "if (piVar30 + 2 < local_c8) goto LAB_00118b5e;" if (parenthesized_expression "(piVar30 + 2 < local_c8)" ( (binary_expression "piVar30 + 2 < local_c8" (binary_expression "piVar30 + 2" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_00118b5e;" goto statement_identifier ;)) (labeled_statement "LAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);" statement_identifier : (expression_statement "uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5)" identifier = (call_expression "dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5)" identifier (argument_list "(0,"Compilation unit count must be >= 1 in .debug_names\n",5)" ( number_literal , (string_literal ""Compilation unit count must be >= 1 in .debug_names\n"" " string_content escape_sequence ") , number_literal )))) ;)) (expression_statement "warn(uVar12);" (call_expression "warn(uVar12)" identifier (argument_list "(uVar12)" ( identifier ))) ;) (expression_statement "uVar7 = 0;" (assignment_expression "uVar7 = 0" identifier = number_literal) ;) }))) (expression_statement "piVar24 = piVar30 + 2;" (assignment_expression "piVar24 = piVar30 + 2" identifier = (binary_expression "piVar30 + 2" identifier + number_literal)) ;) (expression_statement "piVar29 = piVar30 + 3;" (assignment_expression "piVar29 = piVar30 + 3" identifier = (binary_expression "piVar30 + 3" identifier + number_literal)) ;) (expression_statement "iVar3 = (int)local_c8;" (assignment_expression "iVar3 = (int)local_c8" identifier = (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }" if (parenthesized_expression "(piVar29 < local_c8)" ( (binary_expression "piVar29 < local_c8" identifier < identifier) )) (compound_statement "{\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }" { (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);" statement_identifier : (expression_statement "uVar8 = (*DAT_00159e20)(piVar24,lVar22);" (assignment_expression "uVar8 = (*DAT_00159e20)(piVar24,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar24,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar24,lVar22)" ( identifier , identifier )))) ;)) (if_statement "if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;" if (parenthesized_expression "(piVar30 + 4 < local_c8)" ( (binary_expression "piVar30 + 4 < local_c8" (binary_expression "piVar30 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\nLAB_001197d8:\n            lVar22 = 4;\n          }" { (labeled_statement "LAB_001197d8:\n            lVar22 = 4;" statement_identifier : (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" identifier = number_literal) ;)) }) (else_clause "else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;" else (if_statement "if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;" if (parenthesized_expression "((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))" ( (binary_expression "(local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U)" (parenthesized_expression "(local_c8 <= piVar29)" ( (binary_expression "local_c8 <= piVar29" identifier <= identifier) )) || (parenthesized_expression "(lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U)" ( (comma_expression "lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U" (assignment_expression "lVar22 = (long)local_c8 - (long)piVar29" identifier = (binary_expression "(long)local_c8 - (long)piVar29" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) , (binary_expression "7 < (int)lVar22 - 1U" number_literal < (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal))) ))) )) (goto_statement "goto LAB_00118bd4;" goto statement_identifier ;)))) (expression_statement "local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);" (assignment_expression "local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22)" (field_expression "local_98._0_4_" identifier . field_identifier) = (call_expression "(*DAT_00159e20)(piVar29,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar29,lVar22)" ( identifier , identifier )))) ;) (if_statement "if (piVar30 + 5 < local_c8) goto LAB_001195e0;" if (parenthesized_expression "(piVar30 + 5 < local_c8)" ( (binary_expression "piVar30 + 5 < local_c8" (binary_expression "piVar30 + 5" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_001195e0;" goto statement_identifier ;)) (if_statement "if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;" if (parenthesized_expression "((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))" ( (binary_expression "(piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8)" (parenthesized_expression "(piVar30 + 4 < local_c8)" ( (binary_expression "piVar30 + 4 < local_c8" (binary_expression "piVar30 + 4" identifier + number_literal) < identifier) )) && (parenthesized_expression "(lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8)" ( (comma_expression "lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8" (assignment_expression "lVar22 = (long)local_c8 - (long)(piVar30 + 4)" identifier = (binary_expression "(long)local_c8 - (long)(piVar30 + 4)" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)(piVar30 + 4)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "(piVar30 + 4)" ( (binary_expression "piVar30 + 4" identifier + number_literal) ))))) , (binary_expression "(int)lVar22 - 1U < 8" (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_001195e5;" goto statement_identifier ;)) (labeled_statement "LAB_00118beb:\n          local_b8 = 0;" statement_identifier : (expression_statement "local_b8 = 0;" (assignment_expression "local_b8 = 0" identifier = number_literal) ;)) (expression_statement "local_84 = 0;" (assignment_expression "local_84 = 0" identifier = number_literal) ;) (expression_statement "local_90 = 0;" (assignment_expression "local_90 = 0" identifier = number_literal) ;) (if_statement "if (local_c8 <= piVar30 + 6) goto LAB_00118c14;" if (parenthesized_expression "(local_c8 <= piVar30 + 6)" ( (binary_expression "local_c8 <= piVar30 + 6" identifier <= (binary_expression "piVar30 + 6" identifier + number_literal)) )) (goto_statement "goto LAB_00118c14;" goto statement_identifier ;)) (labeled_statement "LAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);" statement_identifier : (expression_statement "local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);" (assignment_expression "local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4)" (field_expression "local_a0._0_4_" identifier . field_identifier) = (call_expression "(*DAT_00159e20)(piVar30 + 5,4)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30 + 5,4)" ( (binary_expression "piVar30 + 5" identifier + number_literal) , number_literal )))) ;)) (expression_statement "local_d0 = (ulong)(uint)local_a0;" (assignment_expression "local_d0 = (ulong)(uint)local_a0" identifier = (cast_expression "(ulong)(uint)local_a0" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(uint)local_a0" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "local_b0 = (ulong)((uint)local_a0 * local_88);" (assignment_expression "local_b0 = (ulong)((uint)local_a0 * local_88)" identifier = (call_expression "(ulong)((uint)local_a0 * local_88)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((uint)local_a0 * local_88)" ( (binary_expression "(uint)local_a0 * local_88" (cast_expression "(uint)local_a0" ( (type_descriptor "uint" type_identifier) ) identifier) * identifier) )))) ;) (expression_statement "local_a8 = local_d0 << 2;" (assignment_expression "local_a8 = local_d0 << 2" identifier = (binary_expression "local_d0 << 2" identifier << number_literal)) ;) (if_statement "if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }" if (parenthesized_expression "(piVar30 + 7 < local_c8)" ( (binary_expression "piVar30 + 7 < local_c8" (binary_expression "piVar30 + 7" identifier + number_literal) < identifier) )) (compound_statement "{\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }" { (labeled_statement "LAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);" statement_identifier : (expression_statement "uVar20 = (*DAT_00159e20)(piVar30 + 6,4);" (assignment_expression "uVar20 = (*DAT_00159e20)(piVar30 + 6,4)" identifier = (call_expression "(*DAT_00159e20)(piVar30 + 6,4)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30 + 6,4)" ( (binary_expression "piVar30 + 6" identifier + number_literal) , number_literal )))) ;)) (if_statement "if (piVar30 + 8 < local_c8) goto LAB_00119860;" if (parenthesized_expression "(piVar30 + 8 < local_c8)" ( (binary_expression "piVar30 + 8 < local_c8" (binary_expression "piVar30 + 8" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_00119860;" goto statement_identifier ;)) (expression_statement "local_c0 = (ulong)uVar20;" (assignment_expression "local_c0 = (ulong)uVar20" identifier = (cast_expression "(ulong)uVar20" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "lVar22 = (long)local_c8 - (long)(piVar30 + 7);" (assignment_expression "lVar22 = (long)local_c8 - (long)(piVar30 + 7)" identifier = (binary_expression "(long)local_c8 - (long)(piVar30 + 7)" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)(piVar30 + 7)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "(piVar30 + 7)" ( (binary_expression "piVar30 + 7" identifier + number_literal) ))))) ;) (if_statement "if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;" if (parenthesized_expression "(7 < (int)lVar22 - 1U)" ( (binary_expression "7 < (int)lVar22 - 1U" number_literal < (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal)) )) (goto_statement "goto LAB_00118c5e;" goto statement_identifier ;)) }) (else_clause "else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }" else (compound_statement "{\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }" { (if_statement "if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;" if (parenthesized_expression "(7 < (iVar3 - (int)(piVar30 + 6)) - 1U)" ( (binary_expression "7 < (iVar3 - (int)(piVar30 + 6)) - 1U" number_literal < (binary_expression "(iVar3 - (int)(piVar30 + 6)) - 1U" (parenthesized_expression "(iVar3 - (int)(piVar30 + 6))" ( (binary_expression "iVar3 - (int)(piVar30 + 6)" identifier - (cast_expression "(int)(piVar30 + 6)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar30 + 6)" ( (binary_expression "piVar30 + 6" identifier + number_literal) )))) )) - number_literal)) )) (goto_statement "goto LAB_00118c46;" goto statement_identifier ;)) (expression_statement "uVar20 = (*DAT_00159e20)(piVar30 + 6);" (assignment_expression "uVar20 = (*DAT_00159e20)(piVar30 + 6)" identifier = (call_expression "(*DAT_00159e20)(piVar30 + 6)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30 + 6)" ( (binary_expression "piVar30 + 6" identifier + number_literal) )))) ;) (if_statement "if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }" if (parenthesized_expression "(local_c8 <= piVar30 + 8)" ( (binary_expression "local_c8 <= piVar30 + 8" identifier <= (binary_expression "piVar30 + 8" identifier + number_literal)) )) (compound_statement "{\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }" { (expression_statement "local_c0 = (ulong)uVar20;" (assignment_expression "local_c0 = (ulong)uVar20" identifier = (cast_expression "(ulong)uVar20" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (goto_statement "goto LAB_00118c5e;" goto statement_identifier ;) })) (labeled_statement "LAB_00119860:\n            local_c0 = (ulong)uVar20;" statement_identifier : (expression_statement "local_c0 = (ulong)uVar20;" (assignment_expression "local_c0 = (ulong)uVar20" identifier = (cast_expression "(ulong)uVar20" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;)) (labeled_statement "LAB_00119867:\n            lVar22 = 4;" statement_identifier : (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" identifier = number_literal) ;)) }))) (expression_statement "piVar29 = piVar30 + 8;" (assignment_expression "piVar29 = piVar30 + 8" identifier = (binary_expression "piVar30 + 8" identifier + number_literal)) ;) (expression_statement "uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);" (assignment_expression "uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar30 + 7,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30 + 7,lVar22)" ( (binary_expression "piVar30 + 7" identifier + number_literal) , identifier )))) ;) (expression_statement "uVar20 = uVar9;" (assignment_expression "uVar20 = uVar9" identifier = identifier) ;) (if_statement "if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }" if (parenthesized_expression "((uVar9 & 3) != 0)" ( (binary_expression "(uVar9 & 3) != 0" (parenthesized_expression "(uVar9 & 3)" ( (binary_expression "uVar9 & 3" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }" { (expression_statement "uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5)" identifier = (call_expression "dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5)" identifier (argument_list "(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5)" ( number_literal , (string_literal ""Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "uVar20 = (-uVar9 & 3) + uVar9;" (assignment_expression "uVar20 = (-uVar9 & 3) + uVar9" identifier = (binary_expression "(-uVar9 & 3) + uVar9" (parenthesized_expression "(-uVar9 & 3)" ( (binary_expression "-uVar9 & 3" (unary_expression "-uVar9" - identifier) & number_literal) )) + identifier)) ;) (expression_statement "warn(uVar12,uVar9);" (call_expression "warn(uVar12,uVar9)" identifier (argument_list "(uVar12,uVar9)" ( identifier , identifier ))) ;) })) (expression_statement "pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Augmentation string:",5)" identifier = (cast_expression "(char *)dcgettext(0,"Augmentation string:",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Augmentation string:",5)" identifier (argument_list "(0,"Augmentation string:",5)" ( number_literal , (string_literal ""Augmentation string:"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier ))) ;) (if_statement "if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }" if (parenthesized_expression "(uVar20 != 0)" ( (binary_expression "uVar20 != 0" identifier != number_literal) )) (compound_statement "{\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }" { (expression_statement "piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);" (assignment_expression "piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21)" identifier = (cast_expression "(int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar30 + (ulong)(uVar20 - 1) + 0x21)" ( (binary_expression "(long)piVar30 + (ulong)(uVar20 - 1) + 0x21" (binary_expression "(long)piVar30 + (ulong)(uVar20 - 1)" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (call_expression "(ulong)(uVar20 - 1)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar20 - 1)" ( (binary_expression "uVar20 - 1" identifier - number_literal) )))) + number_literal) )))) ;) (expression_statement "piVar24 = piVar29;" (assignment_expression "piVar24 = piVar29" identifier = identifier) ;) (do_statement "do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);" do (compound_statement "{\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            }" { (expression_statement "piVar1 = (int *)((long)piVar24 + 1);" (assignment_expression "piVar1 = (int *)((long)piVar24 + 1)" identifier = (cast_expression "(int *)((long)piVar24 + 1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar24 + 1)" ( (binary_expression "(long)piVar24 + 1" (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) (if_statement "if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }" if (parenthesized_expression "(piVar1 < local_c8)" ( (binary_expression "piVar1 < local_c8" identifier < identifier) )) (compound_statement "{\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }" { (expression_statement "uVar21 = 1;" (assignment_expression "uVar21 = 1" identifier = number_literal) ;) (labeled_statement "LAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);" statement_identifier : (expression_statement "bVar4 = (*DAT_00159e20)(piVar24,uVar21);" (assignment_expression "bVar4 = (*DAT_00159e20)(piVar24,uVar21)" identifier = (call_expression "(*DAT_00159e20)(piVar24,uVar21)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar24,uVar21)" ( identifier , identifier )))) ;)) (expression_statement "uVar21 = (ulong)bVar4;" (assignment_expression "uVar21 = (ulong)bVar4" identifier = (cast_expression "(ulong)bVar4" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) }) (else_clause "else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }" else (compound_statement "{\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }" { (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (if_statement "if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }" if (parenthesized_expression "((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8))" ( (binary_expression "(piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)" (parenthesized_expression "(piVar24 < local_c8)" ( (binary_expression "piVar24 < local_c8" identifier < identifier) )) && (parenthesized_expression "((int)((long)local_c8 - (long)piVar24) - 1U < 8)" ( (binary_expression "(int)((long)local_c8 - (long)piVar24) - 1U < 8" (binary_expression "(int)((long)local_c8 - (long)piVar24) - 1U" (cast_expression "(int)((long)local_c8 - (long)piVar24)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((long)local_c8 - (long)piVar24)" ( (binary_expression "(long)local_c8 - (long)piVar24" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) - number_literal) < number_literal) ))) )) (compound_statement "{\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }" { (expression_statement "uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;" (assignment_expression "uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff" identifier = (binary_expression "(long)local_c8 - (long)piVar24 & 0xffffffff" (binary_expression "(long)local_c8 - (long)piVar24" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) & number_literal)) ;) (goto_statement "goto LAB_00119753;" goto statement_identifier ;) })) }))) (expression_statement "printf(" %02x",uVar21);" (call_expression "printf(" %02x",uVar21)" identifier (argument_list "(" %02x",uVar21)" ( (string_literal "" %02x"" " string_content ") , identifier ))) ;) (expression_statement "piVar24 = piVar1;" (assignment_expression "piVar24 = piVar1" identifier = identifier) ;) (expression_statement "piVar29 = piVar30;" (assignment_expression "piVar29 = piVar30" identifier = identifier) ;) }) while (parenthesized_expression "(piVar1 != piVar30)" ( (binary_expression "piVar1 != piVar30" identifier != identifier) )) ;) })) }) (else_clause "else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }" else (compound_statement "{\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }" { (if_statement "if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;" if (parenthesized_expression "((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8))" ( (binary_expression "(piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)" (parenthesized_expression "(piVar24 < local_c8)" ( (binary_expression "piVar24 < local_c8" identifier < identifier) )) && (parenthesized_expression "(lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)" ( (comma_expression "lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8" (assignment_expression "lVar22 = (long)local_c8 - (long)piVar24" identifier = (binary_expression "(long)local_c8 - (long)piVar24" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) , (binary_expression "(int)lVar22 - 1U < 8" (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00119825;" goto statement_identifier ;)) (expression_statement "uVar8 = 0;" (assignment_expression "uVar8 = 0" identifier = number_literal) ;) (if_statement "if (piVar30 + 4 < local_c8) goto LAB_001197d8;" if (parenthesized_expression "(piVar30 + 4 < local_c8)" ( (binary_expression "piVar30 + 4 < local_c8" (binary_expression "piVar30 + 4" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_001197d8;" goto statement_identifier ;)) (labeled_statement "LAB_00118bd4:\n          local_98._0_4_ = 0;" statement_identifier : (expression_statement "local_98._0_4_ = 0;" (assignment_expression "local_98._0_4_ = 0" (field_expression "local_98._0_4_" identifier . field_identifier) = number_literal) ;)) (if_statement "if (local_c8 <= piVar30 + 5) goto LAB_00118beb;" if (parenthesized_expression "(local_c8 <= piVar30 + 5)" ( (binary_expression "local_c8 <= piVar30 + 5" identifier <= (binary_expression "piVar30 + 5" identifier + number_literal)) )) (goto_statement "goto LAB_00118beb;" goto statement_identifier ;)) (labeled_statement "LAB_001195e0:\n          lVar22 = 4;" statement_identifier : (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" identifier = number_literal) ;)) (labeled_statement "LAB_001195e5:\n          piVar29 = piVar30 + 5;" statement_identifier : (expression_statement "piVar29 = piVar30 + 5;" (assignment_expression "piVar29 = piVar30 + 5" identifier = (binary_expression "piVar30 + 5" identifier + number_literal)) ;)) (expression_statement "local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);" (assignment_expression "local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar30 + 4,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30 + 4,lVar22)" ( (binary_expression "piVar30 + 4" identifier + number_literal) , identifier )))) ;) (expression_statement "local_b8 = (ulong)local_84;" (assignment_expression "local_b8 = (ulong)local_84" identifier = (cast_expression "(ulong)local_84" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "local_90 = local_b8 << 2;" (assignment_expression "local_90 = local_b8 << 2" identifier = (binary_expression "local_b8 << 2" identifier << number_literal)) ;) (if_statement "if (piVar30 + 6 < local_c8) goto LAB_0011975e;" if (parenthesized_expression "(piVar30 + 6 < local_c8)" ( (binary_expression "piVar30 + 6 < local_c8" (binary_expression "piVar30 + 6" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_0011975e;" goto statement_identifier ;)) (if_statement "if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }" if (parenthesized_expression "((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U))" ( (binary_expression "(local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)" (parenthesized_expression "(local_c8 <= piVar29)" ( (binary_expression "local_c8 <= piVar29" identifier <= identifier) )) || (parenthesized_expression "(7 < (int)((long)local_c8 - (long)piVar29) - 1U)" ( (binary_expression "7 < (int)((long)local_c8 - (long)piVar29) - 1U" number_literal < (binary_expression "(int)((long)local_c8 - (long)piVar29) - 1U" (cast_expression "(int)((long)local_c8 - (long)piVar29)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((long)local_c8 - (long)piVar29)" ( (binary_expression "(long)local_c8 - (long)piVar29" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) - number_literal)) ))) )) (compound_statement "{\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }" { (labeled_statement "LAB_00118c14:\n            local_a8 = 0;" statement_identifier : (expression_statement "local_a8 = 0;" (assignment_expression "local_a8 = 0" identifier = number_literal) ;)) (expression_statement "local_d0 = 0;" (assignment_expression "local_d0 = 0" identifier = number_literal) ;) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) (expression_statement "local_a0._0_4_ = 0;" (assignment_expression "local_a0._0_4_ = 0" (field_expression "local_a0._0_4_" identifier . field_identifier) = number_literal) ;) (if_statement "if (local_c8 <= piVar30 + 7) goto LAB_00118c46;" if (parenthesized_expression "(local_c8 <= piVar30 + 7)" ( (binary_expression "local_c8 <= piVar30 + 7" identifier <= (binary_expression "piVar30 + 7" identifier + number_literal)) )) (goto_statement "goto LAB_00118c46;" goto statement_identifier ;)) (goto_statement "goto LAB_00119667;" goto statement_identifier ;) })) (expression_statement "local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);" (assignment_expression "local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29)" (field_expression "local_a0._0_4_" identifier . field_identifier) = (call_expression "(*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar29,(long)local_c8 - (long)piVar29)" ( identifier , (binary_expression "(long)local_c8 - (long)piVar29" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) ;) (expression_statement "local_d0 = (ulong)(uint)local_a0;" (assignment_expression "local_d0 = (ulong)(uint)local_a0" identifier = (cast_expression "(ulong)(uint)local_a0" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(uint)local_a0" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "local_b0 = (ulong)((uint)local_a0 * local_88);" (assignment_expression "local_b0 = (ulong)((uint)local_a0 * local_88)" identifier = (call_expression "(ulong)((uint)local_a0 * local_88)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((uint)local_a0 * local_88)" ( (binary_expression "(uint)local_a0 * local_88" (cast_expression "(uint)local_a0" ( (type_descriptor "uint" type_identifier) ) identifier) * identifier) )))) ;) (expression_statement "local_a8 = local_d0 << 2;" (assignment_expression "local_a8 = local_d0 << 2" identifier = (binary_expression "local_d0 << 2" identifier << number_literal)) ;) (if_statement "if (piVar30 + 7 < local_c8) goto LAB_00119667;" if (parenthesized_expression "(piVar30 + 7 < local_c8)" ( (binary_expression "piVar30 + 7 < local_c8" (binary_expression "piVar30 + 7" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_00119667;" goto statement_identifier ;)) (labeled_statement "LAB_00118c46:\n          local_c0 = 0;" statement_identifier : (expression_statement "local_c0 = 0;" (assignment_expression "local_c0 = 0" identifier = number_literal) ;)) (if_statement "if (piVar30 + 8 < local_c8) goto LAB_00119867;" if (parenthesized_expression "(piVar30 + 8 < local_c8)" ( (binary_expression "piVar30 + 8 < local_c8" (binary_expression "piVar30 + 8" identifier + number_literal) < identifier) )) (goto_statement "goto LAB_00119867;" goto statement_identifier ;)) (labeled_statement "LAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);" statement_identifier : (expression_statement "pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Augmentation string:",5)" identifier = (cast_expression "(char *)dcgettext(0,"Augmentation string:",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Augmentation string:",5)" identifier (argument_list "(0,"Augmentation string:",5)" ( number_literal , (string_literal ""Augmentation string:"" " string_content ") , number_literal ))))) ;)) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier ))) ;) (expression_statement "piVar29 = piVar30 + 8;" (assignment_expression "piVar29 = piVar30 + 8" identifier = (binary_expression "piVar30 + 8" identifier + number_literal)) ;) }))) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "pcVar11 = (char *)dcgettext(0,"CU table:\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"CU table:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"CU table:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"CU table:\n",5)" identifier (argument_list "(0,"CU table:\n",5)" ( number_literal , (string_literal ""CU table:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier ))) ;) (if_statement "if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }" if (parenthesized_expression "(uVar7 != 0)" ( (binary_expression "uVar7 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }" { (expression_statement "uVar10 = (ulong)local_88;" (assignment_expression "uVar10 = (ulong)local_88" identifier = (cast_expression "(ulong)local_88" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" identifier = identifier) ;) (do_statement "do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);" do (compound_statement "{\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          }" { (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" identifier = identifier) ;) (expression_statement "piVar24 = (int *)((long)piVar30 + uVar10);" (assignment_expression "piVar24 = (int *)((long)piVar30 + uVar10)" identifier = (cast_expression "(int *)((long)piVar30 + uVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar30 + uVar10)" ( (binary_expression "(long)piVar30 + uVar10" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) )))) ;) (expression_statement "uVar20 = local_88;" (assignment_expression "uVar20 = local_88" identifier = identifier) ;) (if_statement "if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }" if (parenthesized_expression "((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8))))" ( (binary_expression "(piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))" (parenthesized_expression "(piVar24 < local_c8)" ( (binary_expression "piVar24 < local_c8" identifier < identifier) )) || (parenthesized_expression "((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))" ( (parenthesized_expression "(uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8))" ( (comma_expression "uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)" (assignment_expression "uVar12 = 0" identifier = number_literal) , (binary_expression "(int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)" (binary_expression "(int *)((long)piVar24 - uVar10) < local_c8" (cast_expression "(int *)((long)piVar24 - uVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar24 - uVar10)" ( (binary_expression "(long)piVar24 - uVar10" (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) ))) < identifier) && (parenthesized_expression "(uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)" ( (comma_expression "uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8" (assignment_expression "uVar20 = iVar3 - (int)piVar30" identifier = (binary_expression "iVar3 - (int)piVar30" identifier - (cast_expression "(int)piVar30" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "uVar20 - 1 < 8" (binary_expression "uVar20 - 1" identifier - number_literal) < number_literal)) )))) )) ))) )) (compound_statement "{\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }" { (expression_statement "uVar12 = (*DAT_00159e20)(piVar30,uVar20);" (assignment_expression "uVar12 = (*DAT_00159e20)(piVar30,uVar20)" identifier = (call_expression "(*DAT_00159e20)(piVar30,uVar20)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30,uVar20)" ( identifier , identifier )))) ;) })) (expression_statement "pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"[%3u] 0x%lx\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"[%3u] 0x%lx\n",5)" identifier (argument_list "(0,"[%3u] 0x%lx\n",5)" ( number_literal , (string_literal ""[%3u] 0x%lx\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "uVar20 = (int)uVar25 + 1;" (assignment_expression "uVar20 = (int)uVar25 + 1" identifier = (binary_expression "(int)uVar25 + 1" (cast_expression "(int)uVar25" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "printf(pcVar11,uVar25,uVar12);" (call_expression "printf(pcVar11,uVar25,uVar12)" identifier (argument_list "(pcVar11,uVar25,uVar12)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar21 = (ulong)uVar20;" (assignment_expression "uVar21 = (ulong)uVar20" identifier = (cast_expression "(ulong)uVar20" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "piVar30 = piVar24;" (assignment_expression "piVar30 = piVar24" identifier = identifier) ;) }) while (parenthesized_expression "(uVar20 != uVar7)" ( (binary_expression "uVar20 != uVar7" identifier != identifier) )) ;) (expression_statement "piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));" (assignment_expression "piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1))" identifier = (cast_expression "(int *)((long)piVar29 + uVar10 * (uVar25 + 1))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar29 + uVar10 * (uVar25 + 1))" ( (binary_expression "(long)piVar29 + uVar10 * (uVar25 + 1)" (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "uVar10 * (uVar25 + 1)" identifier * (parenthesized_expression "(uVar25 + 1)" ( (binary_expression "uVar25 + 1" identifier + number_literal) )))) )))) ;) })) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "pcVar11 = (char *)dcgettext(0,"TU table:\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"TU table:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"TU table:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"TU table:\n",5)" identifier (argument_list "(0,"TU table:\n",5)" ( number_literal , (string_literal ""TU table:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier ))) ;) (if_statement "if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }" if (parenthesized_expression "(uVar8 != 0)" ( (binary_expression "uVar8 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }" { (expression_statement "uVar10 = (ulong)local_88;" (assignment_expression "uVar10 = (ulong)local_88" identifier = (cast_expression "(ulong)local_88" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" identifier = identifier) ;) (while_statement "while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }" { (expression_statement "piVar24 = (int *)((long)piVar30 + uVar10);" (assignment_expression "piVar24 = (int *)((long)piVar30 + uVar10)" identifier = (cast_expression "(int *)((long)piVar30 + uVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar30 + uVar10)" ( (binary_expression "(long)piVar30 + uVar10" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) )))) ;) (expression_statement "uVar7 = local_88;" (assignment_expression "uVar7 = local_88" identifier = identifier) ;) (if_statement "if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }" if (parenthesized_expression "((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8))))" ( (binary_expression "(piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))" (parenthesized_expression "(piVar24 < local_c8)" ( (binary_expression "piVar24 < local_c8" identifier < identifier) )) || (parenthesized_expression "((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))" ( (parenthesized_expression "(uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8))" ( (comma_expression "uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)" (assignment_expression "uVar12 = 0" identifier = number_literal) , (binary_expression "(int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)" (binary_expression "(int *)((long)piVar24 - uVar10) < local_c8" (cast_expression "(int *)((long)piVar24 - uVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar24 - uVar10)" ( (binary_expression "(long)piVar24 - uVar10" (cast_expression "(long)piVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) ))) < identifier) && (parenthesized_expression "(uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)" ( (comma_expression "uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8" (assignment_expression "uVar7 = iVar3 - (int)piVar30" identifier = (binary_expression "iVar3 - (int)piVar30" identifier - (cast_expression "(int)piVar30" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "uVar7 - 1 < 8" (binary_expression "uVar7 - 1" identifier - number_literal) < number_literal)) )))) )) ))) )) (compound_statement "{\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }" { (expression_statement "uVar12 = (*DAT_00159e20)(piVar30,uVar7);" (assignment_expression "uVar12 = (*DAT_00159e20)(piVar30,uVar7)" identifier = (call_expression "(*DAT_00159e20)(piVar30,uVar7)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30,uVar7)" ( identifier , identifier )))) ;) })) (expression_statement "pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"[%3u] 0x%lx\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"[%3u] 0x%lx\n",5)" identifier (argument_list "(0,"[%3u] 0x%lx\n",5)" ( number_literal , (string_literal ""[%3u] 0x%lx\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11,uVar21,uVar12);" (call_expression "printf(pcVar11,uVar21,uVar12)" identifier (argument_list "(pcVar11,uVar21,uVar12)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar7 = (int)uVar21 + 1;" (assignment_expression "uVar7 = (int)uVar21 + 1" identifier = (binary_expression "(int)uVar21 + 1" (cast_expression "(int)uVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (if_statement "if (uVar7 == uVar8) break;" if (parenthesized_expression "(uVar7 == uVar8)" ( (binary_expression "uVar7 == uVar8" identifier == identifier) )) (break_statement "break;" break ;)) (expression_statement "uVar21 = (ulong)uVar7;" (assignment_expression "uVar21 = (ulong)uVar7" identifier = (cast_expression "(ulong)uVar7" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "piVar30 = piVar24;" (assignment_expression "piVar30 = piVar24" identifier = identifier) ;) })) (expression_statement "piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));" (assignment_expression "piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1))" identifier = (cast_expression "(int *)((long)piVar29 + uVar10 * (uVar21 + 1))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar29 + uVar10 * (uVar21 + 1))" ( (binary_expression "(long)piVar29 + uVar10 * (uVar21 + 1)" (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "uVar10 * (uVar21 + 1)" identifier * (parenthesized_expression "(uVar21 + 1)" ( (binary_expression "uVar21 + 1" identifier + number_literal) )))) )))) ;) })) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Foreign TU table:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Foreign TU table:\n",5)" identifier (argument_list "(0,"Foreign TU table:\n",5)" ( number_literal , (string_literal ""Foreign TU table:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier ))) ;) (if_statement "if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }" if (parenthesized_expression "((uint)local_98 != 0)" ( (binary_expression "(uint)local_98 != 0" (cast_expression "(uint)local_98" ( (type_descriptor "uint" type_identifier) ) identifier) != number_literal) )) (compound_statement "{\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }" { (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" identifier = identifier) ;) (do_statement "do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );" do (compound_statement "{\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          }" { (if_statement "if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }" if (parenthesized_expression "(piVar30 + 2 < local_c8)" ( (binary_expression "piVar30 + 2 < local_c8" (binary_expression "piVar30 + 2" identifier + number_literal) < identifier) )) (compound_statement "{\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }" { (expression_statement "lVar22 = 8;" (assignment_expression "lVar22 = 8" identifier = number_literal) ;) (labeled_statement "LAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);" statement_identifier : (expression_statement "uVar12 = (*DAT_00159e20)(piVar30,lVar22);" (assignment_expression "uVar12 = (*DAT_00159e20)(piVar30,lVar22)" identifier = (call_expression "(*DAT_00159e20)(piVar30,lVar22)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar30,lVar22)" ( identifier , identifier )))) ;)) }) (else_clause "else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }" else (compound_statement "{\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }" { (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) (if_statement "if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;" if (parenthesized_expression "((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8))" ( (binary_expression "(piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)" (parenthesized_expression "(piVar30 < local_c8)" ( (binary_expression "piVar30 < local_c8" identifier < identifier) )) && (parenthesized_expression "(lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)" ( (comma_expression "lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8" (assignment_expression "lVar22 = (long)local_c8 - (long)piVar30" identifier = (binary_expression "(long)local_c8 - (long)piVar30" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) , (binary_expression "(int)lVar22 - 1U < 8" (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00118ee3;" goto statement_identifier ;)) }))) (expression_statement "pcVar11 = (char *)dcgettext(0,"[%3u] ",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"[%3u] ",5)" identifier = (cast_expression "(char *)dcgettext(0,"[%3u] ",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"[%3u] ",5)" identifier (argument_list "(0,"[%3u] ",5)" ( number_literal , (string_literal ""[%3u] "" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar11,uVar21);" (call_expression "printf(pcVar11,uVar21)" identifier (argument_list "(pcVar11,uVar21)" ( identifier , identifier ))) ;) (expression_statement "FUN_0010ee90(uVar12,8);" (call_expression "FUN_0010ee90(uVar12,8)" identifier (argument_list "(uVar12,8)" ( identifier , number_literal ))) ;) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "uVar7 = (int)uVar21 + 1;" (assignment_expression "uVar7 = (int)uVar21 + 1" identifier = (binary_expression "(int)uVar21 + 1" (cast_expression "(int)uVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (if_statement "if (uVar7 == (uint)local_98) goto LAB_00118eee;" if (parenthesized_expression "(uVar7 == (uint)local_98)" ( (binary_expression "uVar7 == (uint)local_98" identifier == (cast_expression "(uint)local_98" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_00118eee;" goto statement_identifier ;)) (expression_statement "uVar21 = (ulong)uVar7;" (assignment_expression "uVar21 = (ulong)uVar7" identifier = (cast_expression "(ulong)uVar7" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "piVar30 = piVar30 + 2;" (assignment_expression "piVar30 = piVar30 + 2" identifier = (binary_expression "piVar30 + 2" identifier + number_literal)) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })) (goto_statement "goto LAB_00118ef8;" goto statement_identifier ;) })) (if_statement "if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }" if (parenthesized_expression "((piVar30 < local_c8) && ((int)uVar21 - 1U < 8))" ( (binary_expression "(piVar30 < local_c8) && ((int)uVar21 - 1U < 8)" (parenthesized_expression "(piVar30 < local_c8)" ( (binary_expression "piVar30 < local_c8" identifier < identifier) )) && (parenthesized_expression "((int)uVar21 - 1U < 8)" ( (binary_expression "(int)uVar21 - 1U < 8" (binary_expression "(int)uVar21 - 1U" (cast_expression "(int)uVar21" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal) < number_literal) ))) )) (compound_statement "{\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }" { (expression_statement "uVar10 = uVar21 & 0xffffffff;" (assignment_expression "uVar10 = uVar21 & 0xffffffff" identifier = (binary_expression "uVar21 & 0xffffffff" identifier & number_literal)) ;) (goto_statement "goto LAB_00118af5;" goto statement_identifier ;) })) (expression_statement "pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Version %ld\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Version %ld\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Version %ld\n",5)" identifier (argument_list "(0,"Version %ld\n",5)" ( number_literal , (string_literal ""Version %ld\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11,0);" (call_expression "printf(pcVar11,0)" identifier (argument_list "(pcVar11,0)" ( identifier , number_literal ))) ;) (labeled_statement "LAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);" statement_identifier : (expression_statement "uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5)" identifier = (call_expression "dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5)" identifier (argument_list "(0,"Only DWARF version 5 .debug_names is currently supported.\n",5)" ( number_literal , (string_literal ""Only DWARF version 5 .debug_names is currently supported.\n"" " string_content escape_sequence ") , number_literal )))) ;)) (expression_statement "warn(uVar12);" (call_expression "warn(uVar12)" identifier (argument_list "(uVar12)" ( identifier ))) ;) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) }))) }) (else_clause "else {\n    uVar12 = 1;\n  }" else (compound_statement "{\n    uVar12 = 1;\n  }" { (expression_statement "uVar12 = 1;" (assignment_expression "uVar12 = 1" identifier = number_literal) ;) })))) (return_statement "return uVar12;" return identifier ;) (labeled_statement "LAB_00118eee:\n  piVar29 = piVar29 + uVar21 * 2 + 2;" statement_identifier : (expression_statement "piVar29 = piVar29 + uVar21 * 2 + 2;" (assignment_expression "piVar29 = piVar29 + uVar21 * 2 + 2" identifier = (binary_expression "piVar29 + uVar21 * 2 + 2" (binary_expression "piVar29 + uVar21 * 2" identifier + (binary_expression "uVar21 * 2" identifier * number_literal)) + number_literal)) ;)) (labeled_statement "LAB_00118ef8:\n  putc(10,stdout);" statement_identifier : (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;)) (expression_statement "puVar18 = (uint *)(local_90 + (long)piVar29);" (assignment_expression "puVar18 = (uint *)(local_90 + (long)piVar29)" identifier = (cast_expression "(uint *)(local_90 + (long)piVar29)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_90 + (long)piVar29)" ( (binary_expression "local_90 + (long)piVar29" identifier + (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) ;) (expression_statement "lVar22 = local_b0 + local_a8;" (assignment_expression "lVar22 = local_b0 + local_a8" identifier = (binary_expression "local_b0 + local_a8" identifier + identifier)) ;) (expression_statement "lVar27 = (long)puVar18 + local_b0 + lVar22;" (assignment_expression "lVar27 = (long)puVar18 + local_b0 + lVar22" identifier = (binary_expression "(long)puVar18 + local_b0 + lVar22" (binary_expression "(long)puVar18 + local_b0" (cast_expression "(long)puVar18" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + identifier)) ;) (expression_statement "piVar30 = (int *)(local_c0 + lVar27);" (assignment_expression "piVar30 = (int *)(local_c0 + lVar27)" identifier = (cast_expression "(int *)(local_c0 + lVar27)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_c0 + lVar27)" ( (binary_expression "local_c0 + lVar27" identifier + identifier) )))) ;) (if_statement "if (local_c8 < piVar30) {\n    lVar22 = *(long *)(param_1 + 0x20);\n    uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);\n    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);\n    return 0;\n  }" if (parenthesized_expression "(local_c8 < piVar30)" ( (binary_expression "local_c8 < piVar30" identifier < identifier) )) (compound_statement "{\n    lVar22 = *(long *)(param_1 + 0x20);\n    uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);\n    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);\n    return 0;\n  }" { (expression_statement "lVar22 = *(long *)(param_1 + 0x20);" (assignment_expression "lVar22 = *(long *)(param_1 + 0x20)" identifier = (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) ;) (expression_statement "uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5)" identifier = (call_expression "dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5)" identifier (argument_list "(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5)" ( number_literal , (string_literal ""Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);" (call_expression "warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22)" identifier (argument_list "(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22)" ( identifier , (binary_expression "(long)piVar30 - lVar22" (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) , (binary_expression "(long)local_c8 - lVar22" (cast_expression "(long)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) , (binary_expression "(long)piVar2 - lVar22" (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) ))) ;) (return_statement "return 0;" return number_literal ;) })) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (if_statement "if (local_b8 != 0) {\n    uVar21 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }" if (parenthesized_expression "(local_b8 != 0)" ( (binary_expression "local_b8 != 0" identifier != number_literal) )) (compound_statement "{\n    uVar21 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }" { (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (expression_statement "piVar24 = piVar29 + local_b8;" (assignment_expression "piVar24 = piVar29 + local_b8" identifier = (binary_expression "piVar29 + local_b8" identifier + identifier)) ;) (do_statement "do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);" do (compound_statement "{\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    }" { (expression_statement "uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);" (assignment_expression "uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0)" identifier = (binary_expression "(uVar21 + 1) - (ulong)(*piVar29 == 0)" (parenthesized_expression "(uVar21 + 1)" ( (binary_expression "uVar21 + 1" identifier + number_literal) )) - (call_expression "(ulong)(*piVar29 == 0)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(*piVar29 == 0)" ( (binary_expression "*piVar29 == 0" (pointer_expression "*piVar29" * identifier) == number_literal) ))))) ;) (expression_statement "piVar29 = piVar29 + 1;" (assignment_expression "piVar29 = piVar29 + 1" identifier = (binary_expression "piVar29 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(piVar24 != piVar29)" ( (binary_expression "piVar24 != piVar29" identifier != identifier) )) ;) })) (expression_statement "uVar10 = 0;" (assignment_expression "uVar10 = 0" identifier = number_literal) ;) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;) (expression_statement "pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);" (assignment_expression "pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" identifier = (cast_expression "(char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" identifier (argument_list "(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" ( number_literal , (string_literal ""Used %zu of %lu bucket.\n"" " string_content escape_sequence ") , (string_literal ""Used %zu of %lu buckets.\n"" " string_content escape_sequence ") , identifier ))))) ;) (expression_statement "printf(pcVar11,uVar21,local_b8);" (call_expression "printf(pcVar11,uVar21,local_b8)" identifier (argument_list "(pcVar11,uVar21,local_b8)" ( identifier , identifier , identifier ))) ;) (if_statement "if (local_d0 != 0) {\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar10 = 0;\n    uVar7 = *puVar18;\n    puVar19 = puVar18;\n    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }\n    uVar21 = uVar21 + lVar26;\n  }" if (parenthesized_expression "(local_d0 != 0)" ( (binary_expression "local_d0 != 0" identifier != number_literal) )) (compound_statement "{\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar10 = 0;\n    uVar7 = *puVar18;\n    puVar19 = puVar18;\n    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }\n    uVar21 = uVar21 + lVar26;\n  }" { (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" identifier = number_literal) ;) (expression_statement "uVar10 = 0;" (assignment_expression "uVar10 = 0" identifier = number_literal) ;) (expression_statement "uVar7 = *puVar18;" (assignment_expression "uVar7 = *puVar18" identifier = (pointer_expression "*puVar18" * identifier)) ;) (expression_statement "puVar19 = puVar18;" (assignment_expression "puVar19 = puVar18" identifier = identifier) ;) (while_statement "while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }" while (parenthesized_expression "(puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19)" ( (comma_expression "puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19" (assignment_expression "puVar19 = puVar19 + 1" identifier = (binary_expression "puVar19 + 1" identifier + number_literal)) , (binary_expression "puVar18 + local_d0 != puVar19" (binary_expression "puVar18 + local_d0" identifier + identifier) != identifier)) )) (compound_statement "{\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }" { (expression_statement "uVar8 = *puVar19;" (assignment_expression "uVar8 = *puVar19" identifier = (pointer_expression "*puVar19" * identifier)) ;) (if_statement "if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }" if (parenthesized_expression "(uVar7 % local_84 == uVar8 % local_84)" ( (binary_expression "uVar7 % local_84 == uVar8 % local_84" (binary_expression "uVar7 % local_84" identifier % identifier) == (binary_expression "uVar8 % local_84" identifier % identifier)) )) (compound_statement "{\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }" { (expression_statement "uVar25 = uVar25 + 1;" (assignment_expression "uVar25 = uVar25 + 1" identifier = (binary_expression "uVar25 + 1" identifier + number_literal)) ;) (expression_statement "lVar26 = lVar26 + 1;" (assignment_expression "lVar26 = lVar26 + 1" identifier = (binary_expression "lVar26 + 1" identifier + number_literal)) ;) (expression_statement "uVar7 = uVar8;" (assignment_expression "uVar7 = uVar8" identifier = identifier) ;) (if_statement "if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }" if (parenthesized_expression "(uVar10 < uVar25)" ( (binary_expression "uVar10 < uVar25" identifier < identifier) )) (compound_statement "{\n          uVar10 = uVar25;\n        }" { (expression_statement "uVar10 = uVar25;" (assignment_expression "uVar10 = uVar25" identifier = identifier) ;) })) }) (else_clause "else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }" else (compound_statement "{\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }" { (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) (expression_statement "uVar7 = uVar8;" (assignment_expression "uVar7 = uVar8" identifier = identifier) ;) }))) })) (expression_statement "uVar21 = uVar21 + lVar26;" (assignment_expression "uVar21 = uVar21 + lVar26" identifier = (binary_expression "uVar21 + lVar26" identifier + identifier)) ;) })) (expression_statement "pcVar11 = (char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5)" identifier (argument_list "(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5)" ( number_literal , (string_literal ""Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11,local_d0,lVar26,uVar10);" (call_expression "printf(pcVar11,local_d0,lVar26,uVar10)" identifier (argument_list "(pcVar11,local_d0,lVar26,uVar10)" ( identifier , identifier , identifier , identifier ))) ;) (if_statement "if (local_d0 != uVar21) {\n                    \n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }" if (parenthesized_expression "(local_d0 != uVar21)" ( (binary_expression "local_d0 != uVar21" identifier != identifier) )) (compound_statement "{\n                    \n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }" { (expression_statement "__assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");" (call_expression "__assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names")" identifier (argument_list "("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names")" ( (string_literal ""name_count == buckets_filled + hash_clash_count"" " string_content ") , (string_literal ""../../binutils/dwarf.c"" " string_content ") , number_literal , (string_literal ""display_debug_names"" " string_content ") ))) ;) })) (expression_statement "local_d0 = 0;" (assignment_expression "local_d0 = 0" identifier = number_literal) ;) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (expression_statement "__ptr = (long *)0x0;" (assignment_expression "__ptr = (long *)0x0" identifier = (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (while_statement "while( true ) {\n    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    if (lVar26 == 0) break;\n    if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar21) {\n                    \n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    plVar17 = __ptr + uVar21 * 2;\n    if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }\nLAB_001190c6:\n    plVar17[1] = lVar27;\n    *plVar17 = lVar26;\n    uVar21 = uVar21 + 1;\n    FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    if (lVar26 == 0) break;\n    if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar21) {\n                    \n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    plVar17 = __ptr + uVar21 * 2;\n    if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }\nLAB_001190c6:\n    plVar17[1] = lVar27;\n    *plVar17 = lVar26;\n    uVar21 = uVar21 + 1;\n    FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);\n  }" { (expression_statement "lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);" (assignment_expression "lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier = (call_expression "FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier (argument_list "(lVar27,local_3c,0,piVar30)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "lVar27 = lVar27 + (ulong)local_3c[0];" (assignment_expression "lVar27 = lVar27 + (ulong)local_3c[0]" identifier = (binary_expression "lVar27 + (ulong)local_3c[0]" identifier + (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ])))) ;) (if_statement "if (lVar26 == 0) break;" if (parenthesized_expression "(lVar26 == 0)" ( (binary_expression "lVar26 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (if_statement "if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }" if (parenthesized_expression "(uVar21 == local_d0)" ( (binary_expression "uVar21 == local_d0" identifier == identifier) )) (compound_statement "{\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }" { (expression_statement "local_d0 = uVar21 * 2;" (assignment_expression "local_d0 = uVar21 * 2" identifier = (binary_expression "uVar21 * 2" identifier * number_literal)) ;) (if_statement "if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }" if (parenthesized_expression "(local_d0 < 0x100)" ( (binary_expression "local_d0 < 0x100" identifier < number_literal) )) (compound_statement "{\n        local_d0 = 0x100;\n      }" { (expression_statement "local_d0 = 0x100;" (assignment_expression "local_d0 = 0x100" identifier = number_literal) ;) })) (expression_statement "__ptr = (long *)xrealloc(__ptr,local_d0 << 4);" (assignment_expression "__ptr = (long *)xrealloc(__ptr,local_d0 << 4)" identifier = (cast_expression "(long *)xrealloc(__ptr,local_d0 << 4)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (call_expression "xrealloc(__ptr,local_d0 << 4)" identifier (argument_list "(__ptr,local_d0 << 4)" ( identifier , (binary_expression "local_d0 << 4" identifier << number_literal) ))))) ;) })) (if_statement "if (local_d0 <= uVar21) {\n                    \n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }" if (parenthesized_expression "(local_d0 <= uVar21)" ( (binary_expression "local_d0 <= uVar21" identifier <= identifier) )) (compound_statement "{\n                    \n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }" { (expression_statement "__assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");" (call_expression "__assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names")" identifier (argument_list "("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names")" ( (string_literal ""abbrev_lookup_used < abbrev_lookup_allocated"" " string_content ") , (string_literal ""../../binutils/dwarf.c"" " string_content ") , number_literal , (string_literal ""display_debug_names"" " string_content ") ))) ;) })) (expression_statement "plVar17 = __ptr + uVar21 * 2;" (assignment_expression "plVar17 = __ptr + uVar21 * 2" identifier = (binary_expression "__ptr + uVar21 * 2" identifier + (binary_expression "uVar21 * 2" identifier * number_literal))) ;) (if_statement "if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }" if (parenthesized_expression "(__ptr < plVar17)" ( (binary_expression "__ptr < plVar17" identifier < identifier) )) (compound_statement "{\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }" { (expression_statement "lVar16 = *__ptr;" (assignment_expression "lVar16 = *__ptr" identifier = (pointer_expression "*__ptr" * identifier)) ;) (expression_statement "plVar15 = __ptr;" (assignment_expression "plVar15 = __ptr" identifier = identifier) ;) (while_statement "while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }" while (parenthesized_expression "(lVar26 != lVar16)" ( (binary_expression "lVar26 != lVar16" identifier != identifier) )) (compound_statement "{\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }" { (expression_statement "plVar15 = plVar15 + 2;" (assignment_expression "plVar15 = plVar15 + 2" identifier = (binary_expression "plVar15 + 2" identifier + number_literal)) ;) (if_statement "if (plVar17 <= plVar15) goto LAB_001190c6;" if (parenthesized_expression "(plVar17 <= plVar15)" ( (binary_expression "plVar17 <= plVar15" identifier <= identifier) )) (goto_statement "goto LAB_001190c6;" goto statement_identifier ;)) (expression_statement "lVar16 = *plVar15;" (assignment_expression "lVar16 = *plVar15" identifier = (pointer_expression "*plVar15" * identifier)) ;) })) (expression_statement "lVar16 = *(long *)(param_1 + 0x20);" (assignment_expression "lVar16 = *(long *)(param_1 + 0x20)" identifier = (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) ;) (expression_statement "uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" identifier = (call_expression "dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" identifier (argument_list "(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" ( number_literal , (string_literal ""Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,lVar26,(long)piVar2 - lVar16);" (call_expression "warn(uVar12,lVar26,(long)piVar2 - lVar16)" identifier (argument_list "(uVar12,lVar26,(long)piVar2 - lVar16)" ( identifier , identifier , (binary_expression "(long)piVar2 - lVar16" (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) ))) ;) })) (labeled_statement "LAB_001190c6:\n    plVar17[1] = lVar27;" statement_identifier : (expression_statement "plVar17[1] = lVar27;" (assignment_expression "plVar17[1] = lVar27" (subscript_expression "plVar17[1]" identifier [ number_literal ]) = identifier) ;)) (expression_statement "*plVar17 = lVar26;" (assignment_expression "*plVar17 = lVar26" (pointer_expression "*plVar17" * identifier) = identifier) ;) (expression_statement "uVar21 = uVar21 + 1;" (assignment_expression "uVar21 = uVar21 + 1" identifier = (binary_expression "uVar21 + 1" identifier + number_literal)) ;) (expression_statement "FUN_001114f0(lVar27,local_3c,0,piVar30);" (call_expression "FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier (argument_list "(lVar27,local_3c,0,piVar30)" ( identifier , identifier , number_literal , identifier ))) ;) (expression_statement "lVar27 = lVar27 + (ulong)local_3c[0];" (assignment_expression "lVar27 = lVar27 + (ulong)local_3c[0]" identifier = (binary_expression "lVar27 + (ulong)local_3c[0]" identifier + (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ])))) ;) (do_statement "do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);" do (compound_statement "{\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    }" { (expression_statement "lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);" (assignment_expression "lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier = (call_expression "FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier (argument_list "(lVar27,local_3c,0,piVar30)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "uVar10 = (ulong)local_3c[0];" (assignment_expression "uVar10 = (ulong)local_3c[0]" identifier = (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ]))) ;) (expression_statement "lVar16 = FUN_001114f0(lVar27 + uVar10);" (assignment_expression "lVar16 = FUN_001114f0(lVar27 + uVar10)" identifier = (call_expression "FUN_001114f0(lVar27 + uVar10)" identifier (argument_list "(lVar27 + uVar10)" ( (binary_expression "lVar27 + uVar10" identifier + identifier) )))) ;) (expression_statement "lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];" (assignment_expression "lVar27 = lVar27 + uVar10 + (ulong)local_3c[0]" identifier = (binary_expression "lVar27 + uVar10 + (ulong)local_3c[0]" (binary_expression "lVar27 + uVar10" identifier + identifier) + (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ])))) ;) }) while (parenthesized_expression "(lVar16 != 0 || lVar26 != 0)" ( (binary_expression "lVar16 != 0 || lVar26 != 0" (binary_expression "lVar16 != 0" identifier != number_literal) || (binary_expression "lVar26 != 0" identifier != number_literal)) )) ;) })) (expression_statement "pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\nSymbol table:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\nSymbol table:\n",5)" identifier (argument_list "(0,"\nSymbol table:\n",5)" ( number_literal , (string_literal ""\nSymbol table:\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier ))) ;) (if_statement "if ((uint)local_a0 != 0) {\n    local_90 = 0;\n    local_84 = 0;\n    uVar7 = (uint)local_a0 - 1;\n    do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }" if (parenthesized_expression "((uint)local_a0 != 0)" ( (binary_expression "(uint)local_a0 != 0" (cast_expression "(uint)local_a0" ( (type_descriptor "uint" type_identifier) ) identifier) != number_literal) )) (compound_statement "{\n    local_90 = 0;\n    local_84 = 0;\n    uVar7 = (uint)local_a0 - 1;\n    do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }" { (expression_statement "local_90 = 0;" (assignment_expression "local_90 = 0" identifier = number_literal) ;) (expression_statement "local_84 = 0;" (assignment_expression "local_84 = 0" identifier = number_literal) ;) (expression_statement "uVar7 = (uint)local_a0 - 1;" (assignment_expression "uVar7 = (uint)local_a0 - 1" identifier = (binary_expression "(uint)local_a0 - 1" (cast_expression "(uint)local_a0" ( (type_descriptor "uint" type_identifier) ) identifier) - number_literal)) ;) (do_statement "do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);" do (compound_statement "{\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    }" { (expression_statement "uVar10 = (ulong)local_84;" (assignment_expression "uVar10 = (ulong)local_84" identifier = (cast_expression "(ulong)local_84" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "lVar27 = uVar10 + local_88;" (assignment_expression "lVar27 = uVar10 + local_88" identifier = (binary_expression "uVar10 + local_88" identifier + identifier)) ;) (expression_statement "piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);" (assignment_expression "piVar29 = (int *)((long)puVar18 + uVar10 + local_a8)" identifier = (cast_expression "(int *)((long)puVar18 + uVar10 + local_a8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar18 + uVar10 + local_a8)" ( (binary_expression "(long)puVar18 + uVar10 + local_a8" (binary_expression "(long)puVar18 + uVar10" (cast_expression "(long)puVar18" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + identifier) )))) ;) (expression_statement "uVar8 = local_88;" (assignment_expression "uVar8 = local_88" identifier = identifier) ;) (if_statement "if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }" if (parenthesized_expression "(((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8))))" ( (binary_expression "((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))" (parenthesized_expression "((int *)((long)puVar18 + lVar27 + local_a8) < local_c8)" ( (binary_expression "(int *)((long)puVar18 + lVar27 + local_a8) < local_c8" (cast_expression "(int *)((long)puVar18 + lVar27 + local_a8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar18 + lVar27 + local_a8)" ( (binary_expression "(long)puVar18 + lVar27 + local_a8" (binary_expression "(long)puVar18 + lVar27" (cast_expression "(long)puVar18" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + identifier) ))) < identifier) )) || (parenthesized_expression "((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))" ( (parenthesized_expression "(uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8))" ( (comma_expression "uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" (assignment_expression "uVar12 = 0" identifier = number_literal) , (binary_expression "piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" (binary_expression "piVar29 < local_c8" identifier < identifier) && (parenthesized_expression "(uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" ( (comma_expression "uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8" (assignment_expression "uVar8 = iVar3 - (int)piVar29" identifier = (binary_expression "iVar3 - (int)piVar29" identifier - (cast_expression "(int)piVar29" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "uVar8 - 1 < 8" (binary_expression "uVar8 - 1" identifier - number_literal) < number_literal)) )))) )) ))) )) (compound_statement "{\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }" { (expression_statement "uVar12 = (*DAT_00159e20)(piVar29,uVar8);" (assignment_expression "uVar12 = (*DAT_00159e20)(piVar29,uVar8)" identifier = (call_expression "(*DAT_00159e20)(piVar29,uVar8)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar29,uVar8)" ( identifier , identifier )))) ;) })) (expression_statement "piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);" (assignment_expression "piVar29 = (int *)((long)puVar18 + uVar10 + lVar22)" identifier = (cast_expression "(int *)((long)puVar18 + uVar10 + lVar22)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar18 + uVar10 + lVar22)" ( (binary_expression "(long)puVar18 + uVar10 + lVar22" (binary_expression "(long)puVar18 + uVar10" (cast_expression "(long)puVar18" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + identifier) )))) ;) (expression_statement "uVar8 = local_88;" (assignment_expression "uVar8 = local_88" identifier = identifier) ;) (if_statement "if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }" if (parenthesized_expression "(((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         )" ( (binary_expression "((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))" (parenthesized_expression "((int *)((long)puVar18 + lVar27 + lVar22) < local_c8)" ( (binary_expression "(int *)((long)puVar18 + lVar27 + lVar22) < local_c8" (cast_expression "(int *)((long)puVar18 + lVar27 + lVar22)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar18 + lVar27 + lVar22)" ( (binary_expression "(long)puVar18 + lVar27 + lVar22" (binary_expression "(long)puVar18 + lVar27" (cast_expression "(long)puVar18" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + identifier) ))) < identifier) )) || (parenthesized_expression "((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))" ( (parenthesized_expression "(local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8))" ( (comma_expression "local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" (assignment_expression "local_98 = piVar30" identifier = identifier) , (binary_expression "piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" (binary_expression "piVar29 < local_c8" identifier < identifier) && (parenthesized_expression "(uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" ( (comma_expression "uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8" (assignment_expression "uVar8 = iVar3 - (int)piVar29" identifier = (binary_expression "iVar3 - (int)piVar29" identifier - (cast_expression "(int)piVar29" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "uVar8 - 1 < 8" (binary_expression "uVar8 - 1" identifier - number_literal) < number_literal)) )))) )) ))) )) (compound_statement "{\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }" { (expression_statement "lVar27 = (*DAT_00159e20)(piVar29,uVar8);" (assignment_expression "lVar27 = (*DAT_00159e20)(piVar29,uVar8)" identifier = (call_expression "(*DAT_00159e20)(piVar29,uVar8)" (parenthesized_expression "(*DAT_00159e20)" ( (pointer_expression "*DAT_00159e20" * identifier) )) (argument_list "(piVar29,uVar8)" ( identifier , identifier )))) ;) (expression_statement "local_98 = (int *)(lVar27 + (long)piVar30);" (assignment_expression "local_98 = (int *)(lVar27 + (long)piVar30)" identifier = (cast_expression "(int *)(lVar27 + (long)piVar30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar27 + (long)piVar30)" ( (binary_expression "lVar27 + (long)piVar30" identifier + (cast_expression "(long)piVar30" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) ;) })) (expression_statement "uVar12 = FUN_00110250(uVar12);" (assignment_expression "uVar12 = FUN_00110250(uVar12)" identifier = (call_expression "FUN_00110250(uVar12)" identifier (argument_list "(uVar12)" ( identifier )))) ;) (expression_statement "printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);" (call_expression "printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12)" identifier (argument_list "("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12)" ( (string_literal ""[%3u] #%08x %s:"" " string_content ") , (binary_expression "local_90 & 0xffffffff" identifier & number_literal) , (cast_expression "(ulong)puVar18[local_90]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar18[local_90]" identifier [ identifier ])) , identifier ))) ;) (expression_statement "uVar8 = 0xfffffffe;" (assignment_expression "uVar8 = 0xfffffffe" identifier = number_literal) ;) (expression_statement "local_a0 = -1;" (assignment_expression "local_a0 = -1" identifier = number_literal) ;) (expression_statement "piVar29 = local_98;" (assignment_expression "piVar29 = local_98" identifier = identifier) ;) (while_statement "while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }" { (while_statement "while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }" while (parenthesized_expression "(lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff)" ( (comma_expression "lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff" (assignment_expression "lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8)" identifier = (call_expression "FUN_001114f0(piVar29,local_3c,0,local_c8)" identifier (argument_list "(piVar29,local_3c,0,local_c8)" ( identifier , identifier , number_literal , identifier )))) , (binary_expression "uVar8 == 0xffffffff" identifier == number_literal)) )) (compound_statement "{\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }" { (expression_statement "piVar29 = local_98;" (assignment_expression "piVar29 = local_98" identifier = identifier) ;) (expression_statement "local_a0 = lVar27;" (assignment_expression "local_a0 = lVar27" identifier = identifier) ;) (expression_statement "uVar8 = 0;" (assignment_expression "uVar8 = 0" identifier = number_literal) ;) })) (if_statement "if (lVar27 == 0) goto LAB_001193b3;" if (parenthesized_expression "(lVar27 == 0)" ( (binary_expression "lVar27 == 0" identifier == number_literal) )) (goto_statement "goto LAB_001193b3;" goto statement_identifier ;)) (expression_statement "uVar10 = (ulong)local_3c[0];" (assignment_expression "uVar10 = (ulong)local_3c[0]" identifier = (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ]))) ;) (if_statement "if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }" if (parenthesized_expression "(-1 < (int)uVar8)" ( (binary_expression "-1 < (int)uVar8" number_literal < (cast_expression "(int)uVar8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }" { (if_statement "if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }" if (parenthesized_expression "((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0))" ( (binary_expression "(uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)" (parenthesized_expression "(uVar8 != 0)" ( (binary_expression "uVar8 != 0" identifier != number_literal) )) || (parenthesized_expression "(puVar23 = &DAT_0013d6b7, local_a0 != 0)" ( (comma_expression "puVar23 = &DAT_0013d6b7, local_a0 != 0" (assignment_expression "puVar23 = &DAT_0013d6b7" identifier = (pointer_expression "&DAT_0013d6b7" & identifier)) , (binary_expression "local_a0 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n            puVar23 = &DAT_00142aab;\n          }" { (expression_statement "puVar23 = &DAT_00142aab;" (assignment_expression "puVar23 = &DAT_00142aab" identifier = (pointer_expression "&DAT_00142aab" & identifier)) ;) })) (expression_statement "printf("%s<%lu>",puVar23,lVar27);" (call_expression "printf("%s<%lu>",puVar23,lVar27)" identifier (argument_list "("%s<%lu>",puVar23,lVar27)" ( (string_literal ""%s<%lu>"" " string_content ") , identifier , identifier ))) ;) })) (if_statement "if (__ptr + uVar21 * 2 <= __ptr) break;" if (parenthesized_expression "(__ptr + uVar21 * 2 <= __ptr)" ( (binary_expression "__ptr + uVar21 * 2 <= __ptr" (binary_expression "__ptr + uVar21 * 2" identifier + (binary_expression "uVar21 * 2" identifier * number_literal)) <= identifier) )) (break_statement "break;" break ;)) (expression_statement "lVar26 = *__ptr;" (assignment_expression "lVar26 = *__ptr" identifier = (pointer_expression "*__ptr" * identifier)) ;) (expression_statement "plVar17 = __ptr;" (assignment_expression "plVar17 = __ptr" identifier = identifier) ;) (while_statement "while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }" while (parenthesized_expression "(lVar27 != lVar26)" ( (binary_expression "lVar27 != lVar26" identifier != identifier) )) (compound_statement "{\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }" { (expression_statement "plVar17 = plVar17 + 2;" (assignment_expression "plVar17 = plVar17 + 2" identifier = (binary_expression "plVar17 + 2" identifier + number_literal)) ;) (if_statement "if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;" if (parenthesized_expression "(__ptr + uVar21 * 2 <= plVar17)" ( (binary_expression "__ptr + uVar21 * 2 <= plVar17" (binary_expression "__ptr + uVar21 * 2" identifier + (binary_expression "uVar21 * 2" identifier * number_literal)) <= identifier) )) (goto_statement "goto LAB_00119382;" goto statement_identifier ;)) (expression_statement "lVar26 = *plVar17;" (assignment_expression "lVar26 = *plVar17" identifier = (pointer_expression "*plVar17" * identifier)) ;) })) (expression_statement "lVar27 = plVar17[1];" (assignment_expression "lVar27 = plVar17[1]" identifier = (subscript_expression "plVar17[1]" identifier [ number_literal ])) ;) (expression_statement "uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);" (assignment_expression "uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier = (call_expression "FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier (argument_list "(lVar27,local_3c,0,piVar30)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "lVar27 = lVar27 + (ulong)local_3c[0];" (assignment_expression "lVar27 = lVar27 + (ulong)local_3c[0]" identifier = (binary_expression "lVar27 + (ulong)local_3c[0]" identifier + (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ])))) ;) (if_statement "if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }" if (parenthesized_expression "(-1 < (int)uVar8)" ( (binary_expression "-1 < (int)uVar8" number_literal < (cast_expression "(int)uVar8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }" { (expression_statement "uVar12 = FUN_001103f0(uVar12);" (assignment_expression "uVar12 = FUN_001103f0(uVar12)" identifier = (call_expression "FUN_001103f0(uVar12)" identifier (argument_list "(uVar12)" ( identifier )))) ;) (expression_statement "printf(" %s",uVar12);" (call_expression "printf(" %s",uVar12)" identifier (argument_list "(" %s",uVar12)" ( (string_literal "" %s"" " string_content ") , identifier ))) ;) })) (expression_statement "piVar29 = (int *)((long)piVar29 + uVar10);" (assignment_expression "piVar29 = (int *)((long)piVar29 + uVar10)" identifier = (cast_expression "(int *)((long)piVar29 + uVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)piVar29 + uVar10)" ( (binary_expression "(long)piVar29 + uVar10" (cast_expression "(long)piVar29" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) )))) ;) (while_statement "while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }" { (expression_statement "uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);" (assignment_expression "uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier = (call_expression "FUN_001114f0(lVar27,local_3c,0,piVar30)" identifier (argument_list "(lVar27,local_3c,0,piVar30)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "uVar25 = (ulong)local_3c[0];" (assignment_expression "uVar25 = (ulong)local_3c[0]" identifier = (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ]))) ;) (expression_statement "lVar26 = FUN_001114f0(lVar27 + uVar25);" (assignment_expression "lVar26 = FUN_001114f0(lVar27 + uVar25)" identifier = (call_expression "FUN_001114f0(lVar27 + uVar25)" identifier (argument_list "(lVar27 + uVar25)" ( (binary_expression "lVar27 + uVar25" identifier + identifier) )))) ;) (expression_statement "lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];" (assignment_expression "lVar27 = lVar27 + uVar25 + (ulong)local_3c[0]" identifier = (binary_expression "lVar27 + uVar25 + (ulong)local_3c[0]" (binary_expression "lVar27 + uVar25" identifier + identifier) + (cast_expression "(ulong)local_3c[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "local_3c[0]" identifier [ number_literal ])))) ;) (if_statement "if (lVar26 == 0 && uVar10 == 0) break;" if (parenthesized_expression "(lVar26 == 0 && uVar10 == 0)" ( (binary_expression "lVar26 == 0 && uVar10 == 0" (binary_expression "lVar26 == 0" identifier == number_literal) && (binary_expression "uVar10 == 0" identifier == number_literal)) )) (break_statement "break;" break ;)) (if_statement "if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }" if (parenthesized_expression "(-1 < (int)uVar8)" ( (binary_expression "-1 < (int)uVar8" number_literal < (cast_expression "(int)uVar8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }" { (expression_statement "puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);" (assignment_expression "puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff)" identifier = (cast_expression "(undefined *)FUN_0013b9f0(uVar10 & 0xffffffff)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0013b9f0(uVar10 & 0xffffffff)" identifier (argument_list "(uVar10 & 0xffffffff)" ( (binary_expression "uVar10 & 0xffffffff" identifier & number_literal) ))))) ;) (if_statement "if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }" if (parenthesized_expression "(puVar23 == (undefined *)0x0)" ( (binary_expression "puVar23 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }" { (expression_statement "pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5)" identifier = (cast_expression "(char *)dcgettext(0,"Unknown IDX value: %lx",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Unknown IDX value: %lx",5)" identifier (argument_list "(0,"Unknown IDX value: %lx",5)" ( number_literal , (string_literal ""Unknown IDX value: %lx"" " string_content ") , number_literal ))))) ;) (expression_statement "snprintf(&DAT_001574a0,100,pcVar11,uVar10);" (call_expression "snprintf(&DAT_001574a0,100,pcVar11,uVar10)" identifier (argument_list "(&DAT_001574a0,100,pcVar11,uVar10)" ( (pointer_expression "&DAT_001574a0" & identifier) , number_literal , identifier , identifier ))) ;) (expression_statement "puVar23 = &DAT_001574a0;" (assignment_expression "puVar23 = &DAT_001574a0" identifier = (pointer_expression "&DAT_001574a0" & identifier)) ;) })) (expression_statement "printf(" %s",puVar23);" (call_expression "printf(" %s",puVar23)" identifier (argument_list "(" %s",puVar23)" ( (string_literal "" %s"" " string_content ") , identifier ))) ;) })) (expression_statement "piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);" (assignment_expression "piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d)" identifier = (cast_expression "(int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d)" identifier (argument_list "(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d)" ( number_literal , identifier , number_literal , identifier , identifier , number_literal , number_literal , (cast_expression "(ulong)local_88" ( (type_descriptor "ulong" type_identifier) ) identifier) , number_literal , number_literal , (binary_expression "uVar8 >> 0x1f" identifier >> number_literal) , number_literal , number_literal , number_literal ))))) ;) })) (expression_statement "uVar8 = uVar8 + 1;" (assignment_expression "uVar8 = uVar8 + 1" identifier = (binary_expression "uVar8 + 1" identifier + number_literal)) ;) })) (labeled_statement "LAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);" statement_identifier : (expression_statement "lVar26 = *(long *)(param_1 + 0x20);" (assignment_expression "lVar26 = *(long *)(param_1 + 0x20)" identifier = (pointer_expression "*(long *)(param_1 + 0x20)" * (cast_expression "(long *)(param_1 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) ;)) (expression_statement "uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" identifier = (call_expression "dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" identifier (argument_list "(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" ( number_literal , (string_literal ""Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,lVar27,(long)piVar2 - lVar26);" (call_expression "warn(uVar12,lVar27,(long)piVar2 - lVar26)" identifier (argument_list "(uVar12,lVar27,(long)piVar2 - lVar26)" ( identifier , identifier , (binary_expression "(long)piVar2 - lVar26" (cast_expression "(long)piVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - identifier) ))) ;) (labeled_statement "LAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }" statement_identifier : (if_statement "if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }" if (parenthesized_expression "((int)uVar8 < 1)" ( (binary_expression "(int)uVar8 < 1" (cast_expression "(int)uVar8" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }" { (expression_statement "pcVar11 = (char *)dcgettext(0," <no entries>",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0," <no entries>",5)" identifier = (cast_expression "(char *)dcgettext(0," <no entries>",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," <no entries>",5)" identifier (argument_list "(0," <no entries>",5)" ( number_literal , (string_literal "" <no entries>"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" identifier (argument_list "(pcVar11)" ( identifier ))) ;) }))) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" identifier (argument_list "(10,stdout)" ( number_literal , identifier ))) ;) (expression_statement "local_84 = local_84 + local_88;" (assignment_expression "local_84 = local_84 + local_88" identifier = (binary_expression "local_84 + local_88" identifier + identifier)) ;) (expression_statement "bVar31 = local_90 != uVar7;" (assignment_expression "bVar31 = local_90 != uVar7" identifier = (binary_expression "local_90 != uVar7" identifier != identifier)) ;) (expression_statement "local_90 = local_90 + 1;" (assignment_expression "local_90 = local_90 + 1" identifier = (binary_expression "local_90 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar31)" ( identifier )) ;) })) (expression_statement "free(__ptr);" (call_expression "free(__ptr)" identifier (argument_list "(__ptr)" ( identifier ))) ;) (expression_statement "piVar2 = local_c8;" (assignment_expression "piVar2 = local_c8" identifier = identifier) ;) (goto_statement "goto joined_r0x0011898e;" goto statement_identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier short) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (binary_expression IDENT + LIT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT))) , (binary_expression LIT < (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - LIT))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! (call_expression IDENT (argument_list ( IDENT , IDENT )))) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , LIT )))) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - IDENT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - LIT) < LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < IDENT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT))) , (binary_expression LIT < (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - LIT))) ))) )) (goto_statement goto statement_identifier ;)))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT - LIT)) , (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - LIT) < LIT)) ))) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT))) , (binary_expression LIT < (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - LIT))) ))) )) (goto_statement goto statement_identifier ;)))) (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - LIT) < LIT)) ))) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (binary_expression IDENT + LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression IDENT + LIT) , LIT )))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT << LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression IDENT + LIT) , LIT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - LIT)) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (parenthesized_expression ( (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) - LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (binary_expression IDENT + LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression IDENT + LIT) , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - IDENT) & LIT) )) + IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT - LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) - LIT) < LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) & LIT)) ;) (goto_statement goto statement_identifier ;) })) }))) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT))) , (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - LIT) < LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = LIT) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (binary_expression IDENT + LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression IDENT + LIT) , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT << LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) || (parenthesized_expression ( (binary_expression LIT < (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) - LIT)) ))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (binary_expression IDENT + LIT)) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT << LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }))) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) || (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - IDENT) ))) < IDENT) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) IDENT))) , (binary_expression (binary_expression IDENT - LIT) < LIT)) )))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + (binary_expression IDENT * (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) })) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) || (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - IDENT) ))) < IDENT) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) IDENT))) , (binary_expression (binary_expression IDENT - LIT) < LIT)) )))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + (binary_expression IDENT * (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) })) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT))) , (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - LIT) < LIT)) ))) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( BOOL )) ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - LIT) < LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })))) (return_statement return IDENT ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression IDENT * LIT)) + LIT)) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - IDENT) , (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - IDENT) , (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - IDENT) ))) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT + LIT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * IDENT) == LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , (string_literal " string_content escape_sequence ") , IDENT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT + LIT)) , (binary_expression (binary_expression IDENT + IDENT) != IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT % IDENT) == (binary_expression IDENT % IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) LIT)) ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT << LIT) ))))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (binary_expression IDENT * LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - IDENT) ))) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])))) ;) }) while (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) )) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " escape_sequence string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - LIT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT) + IDENT) ))) < IDENT) )) || (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression (binary_expression IDENT < IDENT) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) IDENT))) , (binary_expression (binary_expression IDENT - LIT) < LIT)) )))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT) + IDENT) ))) < IDENT) )) || (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression (binary_expression IDENT < IDENT) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) IDENT))) , (binary_expression (binary_expression IDENT - LIT) < LIT)) )))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (binary_expression IDENT & LIT) , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ IDENT ])) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) , (binary_expression IDENT == LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression & IDENT)) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) })) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression IDENT * LIT)) <= IDENT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression IDENT * LIT)) <= IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT) )))) ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT)) )) (break_statement break ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression IDENT & LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) })) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , IDENT , LIT , IDENT , IDENT , LIT , LIT , (cast_expression ( (type_descriptor TYPE) ) IDENT) , LIT , LIT , (binary_expression IDENT >> LIT) , LIT , LIT , LIT ))))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - IDENT) ))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }))) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT != IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })))
(function_definition "undefined8 FUN_00118940(long param_1,undefined8 param_2)\n\n{\n  int *piVar1;\n  int *piVar2;\n  int iVar3;\n  byte bVar4;\n  ushort uVar5;\n  short sVar6;\n  uint uVar7;\n  uint uVar8;\n  uint uVar9;\n  ulong uVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  undefined8 uVar14;\n  long *plVar15;\n  long lVar16;\n  long *__ptr;\n  long *plVar17;\n  uint *puVar18;\n  uint *puVar19;\n  uint uVar20;\n  ulong uVar21;\n  long lVar22;\n  undefined *puVar23;\n  int *piVar24;\n  ulong uVar25;\n  long lVar26;\n  long lVar27;\n  int *piVar28;\n  int *piVar29;\n  int *piVar30;\n  bool bVar31;\n  ulong local_d0;\n  int *local_c8;\n  ulong local_c0;\n  ulong local_b8;\n  ulong local_b0;\n  long local_a8;\n  long local_a0;\n  int *local_98;\n  ulong local_90;\n  uint local_88;\n  uint local_84;\n  uint local_3c [3];\n  \n  piVar2 = *(int **)(param_1 + 0x20);\n  piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30));\n  FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18);\n  FUN_0010fed0(10,param_2);\njoined_r0x0011898e:\n  if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }\n  else {\n    uVar12 = 1;\n  }\n  return uVar12;\nLAB_00118eee:\n  piVar29 = piVar29 + uVar21 * 2 + 2;\nLAB_00118ef8:\n  putc(10,stdout);\n  puVar18 = (uint *)(local_90 + (long)piVar29);\n  lVar22 = local_b0 + local_a8;\n  lVar27 = (long)puVar18 + local_b0 + lVar22;\n  piVar30 = (int *)(local_c0 + lVar27);\n  if (local_c8 < piVar30) {\n    lVar22 = *(long *)(param_1 + 0x20);\n    uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);\n    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);\n    return 0;\n  }\n  uVar21 = 0;\n  if (local_b8 != 0) {\n    uVar21 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }\n  uVar10 = 0;\n  lVar26 = 0;\n  pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);\n  printf(pcVar11,uVar21,local_b8);\n  if (local_d0 != 0) {\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar10 = 0;\n    uVar7 = *puVar18;\n    puVar19 = puVar18;\n    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }\n    uVar21 = uVar21 + lVar26;\n  }\n  pcVar11 = (char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5);\n  printf(pcVar11,local_d0,lVar26,uVar10);\n  if (local_d0 != uVar21) {\n                    \n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }\n  local_d0 = 0;\n  uVar21 = 0;\n  __ptr = (long *)0x0;\n  while( true ) {\n    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    if (lVar26 == 0) break;\n    if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar21) {\n                    \n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    plVar17 = __ptr + uVar21 * 2;\n    if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }\nLAB_001190c6:\n    plVar17[1] = lVar27;\n    *plVar17 = lVar26;\n    uVar21 = uVar21 + 1;\n    FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);\n  }\n  pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5);\n  printf(pcVar11);\n  if ((uint)local_a0 != 0) {\n    local_90 = 0;\n    local_84 = 0;\n    uVar7 = (uint)local_a0 - 1;\n    do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }\n  free(__ptr);\n  piVar2 = local_c8;\n  goto joined_r0x0011898e;\n}" (type_identifier "undefined8") (function_declarator "FUN_00118940(long param_1,undefined8 param_2)" (identifier "FUN_00118940") (parameter_list "(long param_1,undefined8 param_2)" (( "(") (parameter_declaration "long param_1" (sized_type_specifier "long" (long "long")) (identifier "param_1")) (, ",") (parameter_declaration "undefined8 param_2" (type_identifier "undefined8") (identifier "param_2")) () ")"))) (compound_statement "{\n  int *piVar1;\n  int *piVar2;\n  int iVar3;\n  byte bVar4;\n  ushort uVar5;\n  short sVar6;\n  uint uVar7;\n  uint uVar8;\n  uint uVar9;\n  ulong uVar10;\n  char *pcVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  undefined8 uVar14;\n  long *plVar15;\n  long lVar16;\n  long *__ptr;\n  long *plVar17;\n  uint *puVar18;\n  uint *puVar19;\n  uint uVar20;\n  ulong uVar21;\n  long lVar22;\n  undefined *puVar23;\n  int *piVar24;\n  ulong uVar25;\n  long lVar26;\n  long lVar27;\n  int *piVar28;\n  int *piVar29;\n  int *piVar30;\n  bool bVar31;\n  ulong local_d0;\n  int *local_c8;\n  ulong local_c0;\n  ulong local_b8;\n  ulong local_b0;\n  long local_a8;\n  long local_a0;\n  int *local_98;\n  ulong local_90;\n  uint local_88;\n  uint local_84;\n  uint local_3c [3];\n  \n  piVar2 = *(int **)(param_1 + 0x20);\n  piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30));\n  FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18);\n  FUN_0010fed0(10,param_2);\njoined_r0x0011898e:\n  if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }\n  else {\n    uVar12 = 1;\n  }\n  return uVar12;\nLAB_00118eee:\n  piVar29 = piVar29 + uVar21 * 2 + 2;\nLAB_00118ef8:\n  putc(10,stdout);\n  puVar18 = (uint *)(local_90 + (long)piVar29);\n  lVar22 = local_b0 + local_a8;\n  lVar27 = (long)puVar18 + local_b0 + lVar22;\n  piVar30 = (int *)(local_c0 + lVar27);\n  if (local_c8 < piVar30) {\n    lVar22 = *(long *)(param_1 + 0x20);\n    uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);\n    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);\n    return 0;\n  }\n  uVar21 = 0;\n  if (local_b8 != 0) {\n    uVar21 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }\n  uVar10 = 0;\n  lVar26 = 0;\n  pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);\n  printf(pcVar11,uVar21,local_b8);\n  if (local_d0 != 0) {\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar10 = 0;\n    uVar7 = *puVar18;\n    puVar19 = puVar18;\n    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }\n    uVar21 = uVar21 + lVar26;\n  }\n  pcVar11 = (char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5);\n  printf(pcVar11,local_d0,lVar26,uVar10);\n  if (local_d0 != uVar21) {\n                    \n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }\n  local_d0 = 0;\n  uVar21 = 0;\n  __ptr = (long *)0x0;\n  while( true ) {\n    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    if (lVar26 == 0) break;\n    if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar21) {\n                    \n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    plVar17 = __ptr + uVar21 * 2;\n    if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }\nLAB_001190c6:\n    plVar17[1] = lVar27;\n    *plVar17 = lVar26;\n    uVar21 = uVar21 + 1;\n    FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);\n  }\n  pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5);\n  printf(pcVar11);\n  if ((uint)local_a0 != 0) {\n    local_90 = 0;\n    local_84 = 0;\n    uVar7 = (uint)local_a0 - 1;\n    do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }\n  free(__ptr);\n  piVar2 = local_c8;\n  goto joined_r0x0011898e;\n}" ({ "{") (declaration "int *piVar1;" (primitive_type "int") (pointer_declarator "*piVar1" (* "*") (identifier "piVar1")) (; ";")) (declaration "int *piVar2;" (primitive_type "int") (pointer_declarator "*piVar2" (* "*") (identifier "piVar2")) (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "byte bVar4;" (type_identifier "byte") (identifier "bVar4") (; ";")) (declaration "ushort uVar5;" (type_identifier "ushort") (identifier "uVar5") (; ";")) (declaration "short sVar6;" (sized_type_specifier "short" (short "short")) (identifier "sVar6") (; ";")) (declaration "uint uVar7;" (type_identifier "uint") (identifier "uVar7") (; ";")) (declaration "uint uVar8;" (type_identifier "uint") (identifier "uVar8") (; ";")) (declaration "uint uVar9;" (type_identifier "uint") (identifier "uVar9") (; ";")) (declaration "ulong uVar10;" (type_identifier "ulong") (identifier "uVar10") (; ";")) (declaration "char *pcVar11;" (primitive_type "char") (pointer_declarator "*pcVar11" (* "*") (identifier "pcVar11")) (; ";")) (declaration "undefined8 uVar12;" (type_identifier "undefined8") (identifier "uVar12") (; ";")) (declaration "undefined8 uVar13;" (type_identifier "undefined8") (identifier "uVar13") (; ";")) (declaration "undefined8 uVar14;" (type_identifier "undefined8") (identifier "uVar14") (; ";")) (declaration "long *plVar15;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar15" (* "*") (identifier "plVar15")) (; ";")) (declaration "long lVar16;" (sized_type_specifier "long" (long "long")) (identifier "lVar16") (; ";")) (declaration "long *__ptr;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*__ptr" (* "*") (identifier "__ptr")) (; ";")) (declaration "long *plVar17;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar17" (* "*") (identifier "plVar17")) (; ";")) (declaration "uint *puVar18;" (type_identifier "uint") (pointer_declarator "*puVar18" (* "*") (identifier "puVar18")) (; ";")) (declaration "uint *puVar19;" (type_identifier "uint") (pointer_declarator "*puVar19" (* "*") (identifier "puVar19")) (; ";")) (declaration "uint uVar20;" (type_identifier "uint") (identifier "uVar20") (; ";")) (declaration "ulong uVar21;" (type_identifier "ulong") (identifier "uVar21") (; ";")) (declaration "long lVar22;" (sized_type_specifier "long" (long "long")) (identifier "lVar22") (; ";")) (declaration "undefined *puVar23;" (type_identifier "undefined") (pointer_declarator "*puVar23" (* "*") (identifier "puVar23")) (; ";")) (declaration "int *piVar24;" (primitive_type "int") (pointer_declarator "*piVar24" (* "*") (identifier "piVar24")) (; ";")) (declaration "ulong uVar25;" (type_identifier "ulong") (identifier "uVar25") (; ";")) (declaration "long lVar26;" (sized_type_specifier "long" (long "long")) (identifier "lVar26") (; ";")) (declaration "long lVar27;" (sized_type_specifier "long" (long "long")) (identifier "lVar27") (; ";")) (declaration "int *piVar28;" (primitive_type "int") (pointer_declarator "*piVar28" (* "*") (identifier "piVar28")) (; ";")) (declaration "int *piVar29;" (primitive_type "int") (pointer_declarator "*piVar29" (* "*") (identifier "piVar29")) (; ";")) (declaration "int *piVar30;" (primitive_type "int") (pointer_declarator "*piVar30" (* "*") (identifier "piVar30")) (; ";")) (declaration "bool bVar31;" (primitive_type "bool") (identifier "bVar31") (; ";")) (declaration "ulong local_d0;" (type_identifier "ulong") (identifier "local_d0") (; ";")) (declaration "int *local_c8;" (primitive_type "int") (pointer_declarator "*local_c8" (* "*") (identifier "local_c8")) (; ";")) (declaration "ulong local_c0;" (type_identifier "ulong") (identifier "local_c0") (; ";")) (declaration "ulong local_b8;" (type_identifier "ulong") (identifier "local_b8") (; ";")) (declaration "ulong local_b0;" (type_identifier "ulong") (identifier "local_b0") (; ";")) (declaration "long local_a8;" (sized_type_specifier "long" (long "long")) (identifier "local_a8") (; ";")) (declaration "long local_a0;" (sized_type_specifier "long" (long "long")) (identifier "local_a0") (; ";")) (declaration "int *local_98;" (primitive_type "int") (pointer_declarator "*local_98" (* "*") (identifier "local_98")) (; ";")) (declaration "ulong local_90;" (type_identifier "ulong") (identifier "local_90") (; ";")) (declaration "uint local_88;" (type_identifier "uint") (identifier "local_88") (; ";")) (declaration "uint local_84;" (type_identifier "uint") (identifier "local_84") (; ";")) (declaration "uint local_3c [3];" (type_identifier "uint") (array_declarator "local_3c [3]" (identifier "local_3c") ([ "[") (number_literal "3") (] "]")) (; ";")) (expression_statement "piVar2 = *(int **)(param_1 + 0x20);" (assignment_expression "piVar2 = *(int **)(param_1 + 0x20)" (identifier "piVar2") (= "=") (pointer_expression "*(int **)(param_1 + 0x20)" (* "*") (cast_expression "(int **)(param_1 + 0x20)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (expression_statement "piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30));" (assignment_expression "piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30))" (identifier "piVar28") (= "=") (cast_expression "(int *)((long)piVar2 + *(long *)(param_1 + 0x30))" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)piVar2 + *(long *)(param_1 + 0x30))" (( "(") (binary_expression "(long)piVar2 + *(long *)(param_1 + 0x30)" (cast_expression "(long)piVar2" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar2")) (+ "+") (pointer_expression "*(long *)(param_1 + 0x30)" (* "*") (cast_expression "(long *)(param_1 + 0x30)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")"))))) () ")")))) (; ";")) (expression_statement "FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18);" (call_expression "FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18)" (identifier "FUN_00110740") (argument_list "(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18)" (( "(") (pointer_expression "*(undefined8 *)(param_1 + 0x10)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x10)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10)" (( "(") (binary_expression "param_1 + 0x10" (identifier "param_1") (+ "+") (number_literal "0x10")) () ")")))) (, ",") (binary_expression "param_1 + 0x18" (identifier "param_1") (+ "+") (number_literal "0x18")) () ")"))) (; ";")) (expression_statement "FUN_0010fed0(10,param_2);" (call_expression "FUN_0010fed0(10,param_2)" (identifier "FUN_0010fed0") (argument_list "(10,param_2)" (( "(") (number_literal "10") (, ",") (identifier "param_2") () ")"))) (; ";")) (labeled_statement "joined_r0x0011898e:\n  if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }\n  else {\n    uVar12 = 1;\n  }" (statement_identifier "joined_r0x0011898e") (: ":") (if_statement "if (piVar2 < piVar28) {\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }\n  else {\n    uVar12 = 1;\n  }" (if "if") (parenthesized_expression "(piVar2 < piVar28)" (( "(") (binary_expression "piVar2 < piVar28" (identifier "piVar2") (< "<") (identifier "piVar28")) () ")")) (compound_statement "{\n    piVar29 = piVar2 + 1;\n    piVar30 = piVar29;\n    if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }\n  }" ({ "{") (expression_statement "piVar29 = piVar2 + 1;" (assignment_expression "piVar29 = piVar2 + 1" (identifier "piVar29") (= "=") (binary_expression "piVar2 + 1" (identifier "piVar2") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" (identifier "piVar30") (= "=") (identifier "piVar29")) (; ";")) (if_statement "if (piVar29 < piVar28) {\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }\n    else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }" (if "if") (parenthesized_expression "(piVar29 < piVar28)" (( "(") (binary_expression "piVar29 < piVar28" (identifier "piVar29") (< "<") (identifier "piVar28")) () ")")) (compound_statement "{\n      lVar22 = 4;\nLAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);\n      local_88 = 4;\n      if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }\n      local_c8 = (int *)((long)piVar30 + uVar21);\n      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      uVar10 = uVar25 + uVar21;\n      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;\nLAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);\n      uVar12 = *(undefined8 *)(param_1 + 0x10);\n      lVar22 = *(long *)(param_1 + 0x20);\n      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);\n      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);\n      uVar12 = 0;\n    }" ({ "{") (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" (identifier "lVar22") (= "=") (number_literal "4")) (; ";")) (labeled_statement "LAB_00118a58:\n      uVar21 = (*DAT_00159e20)(piVar2,lVar22);" (statement_identifier "LAB_00118a58") (: ":") (expression_statement "uVar21 = (*DAT_00159e20)(piVar2,lVar22);" (assignment_expression "uVar21 = (*DAT_00159e20)(piVar2,lVar22)" (identifier "uVar21") (= "=") (call_expression "(*DAT_00159e20)(piVar2,lVar22)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar2,lVar22)" (( "(") (identifier "piVar2") (, ",") (identifier "lVar22") () ")")))) (; ";"))) (expression_statement "local_88 = 4;" (assignment_expression "local_88 = 4" (identifier "local_88") (= "=") (number_literal "4")) (; ";")) (if_statement "if (uVar21 == 0xffffffff) {\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }" (if "if") (parenthesized_expression "(uVar21 == 0xffffffff)" (( "(") (binary_expression "uVar21 == 0xffffffff" (identifier "uVar21") (== "==") (number_literal "0xffffffff")) () ")")) (compound_statement "{\n        piVar30 = piVar2 + 3;\n        if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }\n        uVar21 = (*DAT_00159e20)(piVar29,lVar22);\n        local_88 = 8;\n      }" ({ "{") (expression_statement "piVar30 = piVar2 + 3;" (assignment_expression "piVar30 = piVar2 + 3" (identifier "piVar30") (= "=") (binary_expression "piVar2 + 3" (identifier "piVar2") (+ "+") (number_literal "3"))) (; ";")) (if_statement "if (piVar30 < piVar28) {\n          lVar22 = 8;\n        }\n        else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" (if "if") (parenthesized_expression "(piVar30 < piVar28)" (( "(") (binary_expression "piVar30 < piVar28" (identifier "piVar30") (< "<") (identifier "piVar28")) () ")")) (compound_statement "{\n          lVar22 = 8;\n        }" ({ "{") (expression_statement "lVar22 = 8;" (assignment_expression "lVar22 = 8" (identifier "lVar22") (= "=") (number_literal "8")) (; ";")) (} "}")) (else_clause "else if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" (else "else") (if_statement "if ((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" (if "if") (parenthesized_expression "((piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U))" (( "(") (binary_expression "(piVar28 <= piVar29) ||\n                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)" (parenthesized_expression "(piVar28 <= piVar29)" (( "(") (binary_expression "piVar28 <= piVar29" (identifier "piVar28") (<= "<=") (identifier "piVar29")) () ")")) (|| "||") (parenthesized_expression "(lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)" (( "(") (comma_expression "lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U" (assignment_expression "lVar22 = (long)piVar28 - (long)piVar29" (identifier "lVar22") (= "=") (binary_expression "(long)piVar28 - (long)piVar29" (cast_expression "(long)piVar28" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar28")) (- "-") (cast_expression "(long)piVar29" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar29")))) (, ",") (binary_expression "7 < (int)lVar22 - 1U" (number_literal "7") (< "<") (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "lVar22")) (- "-") (number_literal "1U")))) () ")"))) () ")")) (compound_statement "{\n          local_88 = 8;\n          goto LAB_001189c5;\n        }" ({ "{") (expression_statement "local_88 = 8;" (assignment_expression "local_88 = 8" (identifier "local_88") (= "=") (number_literal "8")) (; ";")) (goto_statement "goto LAB_001189c5;" (goto "goto") (statement_identifier "LAB_001189c5") (; ";")) (} "}"))))) (expression_statement "uVar21 = (*DAT_00159e20)(piVar29,lVar22);" (assignment_expression "uVar21 = (*DAT_00159e20)(piVar29,lVar22)" (identifier "uVar21") (= "=") (call_expression "(*DAT_00159e20)(piVar29,lVar22)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar29,lVar22)" (( "(") (identifier "piVar29") (, ",") (identifier "lVar22") () ")")))) (; ";")) (expression_statement "local_88 = 8;" (assignment_expression "local_88 = 8" (identifier "local_88") (= "=") (number_literal "8")) (; ";")) (} "}"))) (expression_statement "local_c8 = (int *)((long)piVar30 + uVar21);" (assignment_expression "local_c8 = (int *)((long)piVar30 + uVar21)" (identifier "local_c8") (= "=") (cast_expression "(int *)((long)piVar30 + uVar21)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)piVar30 + uVar21)" (( "(") (binary_expression "(long)piVar30 + uVar21" (cast_expression "(long)piVar30" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar30")) (+ "+") (identifier "uVar21")) () ")")))) (; ";")) (expression_statement "uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);" (assignment_expression "uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20)" (identifier "uVar25") (= "=") (binary_expression "(long)piVar30 - *(long *)(param_1 + 0x20)" (cast_expression "(long)piVar30" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar30")) (- "-") (pointer_expression "*(long *)(param_1 + 0x20)" (* "*") (cast_expression "(long *)(param_1 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")")))))) (; ";")) (expression_statement "uVar10 = uVar25 + uVar21;" (assignment_expression "uVar10 = uVar25 + uVar21" (identifier "uVar10") (= "=") (binary_expression "uVar25 + uVar21" (identifier "uVar25") (+ "+") (identifier "uVar21"))) (; ";")) (if_statement "if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;" (if "if") (parenthesized_expression "(!CARRY8(uVar25,uVar21))" (( "(") (unary_expression "!CARRY8(uVar25,uVar21)" (! "!") (call_expression "CARRY8(uVar25,uVar21)" (identifier "CARRY8") (argument_list "(uVar25,uVar21)" (( "(") (identifier "uVar25") (, ",") (identifier "uVar21") () ")")))) () ")")) (goto_statement "goto LAB_001189d9;" (goto "goto") (statement_identifier "LAB_001189d9") (; ";"))) (labeled_statement "LAB_00118a9b:\n      uVar13 = FUN_0010ebb0("x",uVar21,0);" (statement_identifier "LAB_00118a9b") (: ":") (expression_statement "uVar13 = FUN_0010ebb0("x",uVar21,0);" (assignment_expression "uVar13 = FUN_0010ebb0("x",uVar21,0)" (identifier "uVar13") (= "=") (call_expression "FUN_0010ebb0("x",uVar21,0)" (identifier "FUN_0010ebb0") (argument_list "("x",uVar21,0)" (( "(") (string_literal ""x"" (" """) (string_content "x") (" """)) (, ",") (identifier "uVar21") (, ",") (number_literal "0") () ")")))) (; ";"))) (expression_statement "uVar12 = *(undefined8 *)(param_1 + 0x10);" (assignment_expression "uVar12 = *(undefined8 *)(param_1 + 0x10)" (identifier "uVar12") (= "=") (pointer_expression "*(undefined8 *)(param_1 + 0x10)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x10)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10)" (( "(") (binary_expression "param_1 + 0x10" (identifier "param_1") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "lVar22 = *(long *)(param_1 + 0x20);" (assignment_expression "lVar22 = *(long *)(param_1 + 0x20)" (identifier "lVar22") (= "=") (pointer_expression "*(long *)(param_1 + 0x20)" (* "*") (cast_expression "(long *)(param_1 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (expression_statement "uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);" (assignment_expression "uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5)" (identifier "uVar14") (= "=") (call_expression "dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5)" (identifier "dcgettext") (argument_list "(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Debug info is corrupted, %s header at %#lx has length %s\n"" (" """) (string_content "Debug info is corrupted, %s header at %#lx has length %s") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);" (call_expression "warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13)" (identifier "warn") (argument_list "(uVar14,uVar12,(long)piVar2 - lVar22,uVar13)" (( "(") (identifier "uVar14") (, ",") (identifier "uVar12") (, ",") (binary_expression "(long)piVar2 - lVar22" (cast_expression "(long)piVar2" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar2")) (- "-") (identifier "lVar22")) (, ",") (identifier "uVar13") () ")"))) (; ";")) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" (identifier "uVar12") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }" (else "else") (compound_statement "{\n      lVar22 = (long)piVar28 - (long)piVar2;\n      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;\n      local_88 = 4;\nLAB_001189c5:\n      uVar21 = 0;\n      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);\n      local_c8 = piVar30;\nLAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;\n      piVar29 = (int *)((long)piVar30 + 2);\n      if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }\n      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }\n      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n      printf(pcVar11,0);\nLAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);\n      warn(uVar12);\n      uVar12 = 0;\n    }" ({ "{") (expression_statement "lVar22 = (long)piVar28 - (long)piVar2;" (assignment_expression "lVar22 = (long)piVar28 - (long)piVar2" (identifier "lVar22") (= "=") (binary_expression "(long)piVar28 - (long)piVar2" (cast_expression "(long)piVar28" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar28")) (- "-") (cast_expression "(long)piVar2" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar2")))) (; ";")) (if_statement "if ((int)lVar22 - 1U < 8) goto LAB_00118a58;" (if "if") (parenthesized_expression "((int)lVar22 - 1U < 8)" (( "(") (binary_expression "(int)lVar22 - 1U < 8" (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "lVar22")) (- "-") (number_literal "1U")) (< "<") (number_literal "8")) () ")")) (goto_statement "goto LAB_00118a58;" (goto "goto") (statement_identifier "LAB_00118a58") (; ";"))) (expression_statement "local_88 = 4;" (assignment_expression "local_88 = 4" (identifier "local_88") (= "=") (number_literal "4")) (; ";")) (labeled_statement "LAB_001189c5:\n      uVar21 = 0;" (statement_identifier "LAB_001189c5") (: ":") (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" (identifier "uVar21") (= "=") (number_literal "0")) (; ";"))) (expression_statement "uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);" (assignment_expression "uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20)" (identifier "uVar10") (= "=") (binary_expression "(long)piVar30 - *(long *)(param_1 + 0x20)" (cast_expression "(long)piVar30" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar30")) (- "-") (pointer_expression "*(long *)(param_1 + 0x20)" (* "*") (cast_expression "(long *)(param_1 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")")))))) (; ";")) (expression_statement "local_c8 = piVar30;" (assignment_expression "local_c8 = piVar30" (identifier "local_c8") (= "=") (identifier "piVar30")) (; ";")) (labeled_statement "LAB_001189d9:\n      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;" (statement_identifier "LAB_001189d9") (: ":") (if_statement "if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;" (if "if") (parenthesized_expression "(*(ulong *)(param_1 + 0x30) < uVar10)" (( "(") (binary_expression "*(ulong *)(param_1 + 0x30) < uVar10" (pointer_expression "*(ulong *)(param_1 + 0x30)" (* "*") (cast_expression "(ulong *)(param_1 + 0x30)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")")))) (< "<") (identifier "uVar10")) () ")")) (goto_statement "goto LAB_00118a9b;" (goto "goto") (statement_identifier "LAB_00118a9b") (; ";")))) (expression_statement "piVar29 = (int *)((long)piVar30 + 2);" (assignment_expression "piVar29 = (int *)((long)piVar30 + 2)" (identifier "piVar29") (= "=") (cast_expression "(int *)((long)piVar30 + 2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)piVar30 + 2)" (( "(") (binary_expression "(long)piVar30 + 2" (cast_expression "(long)piVar30" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar30")) (+ "+") (number_literal "2")) () ")")))) (; ";")) (if_statement "if (piVar29 < local_c8) {\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }" (if "if") (parenthesized_expression "(piVar29 < local_c8)" (( "(") (binary_expression "piVar29 < local_c8" (identifier "piVar29") (< "<") (identifier "local_c8")) () ")")) (compound_statement "{\n        uVar10 = 2;\nLAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);\n        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);\n        printf(pcVar11,(ulong)uVar5);\n        if (uVar5 != 5) goto LAB_00118a22;\n        piVar24 = piVar30 + 1;\n        if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }\n        piVar24 = piVar30 + 2;\n        piVar29 = piVar30 + 3;\n        iVar3 = (int)local_c8;\n        if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }\n        putc(10,stdout);\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);\n        printf(pcVar11);\n        if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);\n        printf(pcVar11);\n        if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }\n        putc(10,stdout);\n        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);\n        printf(pcVar11);\n        if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }\n        goto LAB_00118ef8;\n      }" ({ "{") (expression_statement "uVar10 = 2;" (assignment_expression "uVar10 = 2" (identifier "uVar10") (= "=") (number_literal "2")) (; ";")) (labeled_statement "LAB_00118af5:\n        uVar5 = (*DAT_00159e20)(piVar30,uVar10);" (statement_identifier "LAB_00118af5") (: ":") (expression_statement "uVar5 = (*DAT_00159e20)(piVar30,uVar10);" (assignment_expression "uVar5 = (*DAT_00159e20)(piVar30,uVar10)" (identifier "uVar5") (= "=") (call_expression "(*DAT_00159e20)(piVar30,uVar10)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar30,uVar10)" (( "(") (identifier "piVar30") (, ",") (identifier "uVar10") () ")")))) (; ";"))) (expression_statement "pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Version %ld\n",5)" (identifier "pcVar11") (= "=") (cast_expression "(char *)dcgettext(0,"Version %ld\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"Version %ld\n",5)" (identifier "dcgettext") (argument_list "(0,"Version %ld\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Version %ld\n"" (" """) (string_content "Version %ld") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar11,(ulong)uVar5);" (call_expression "printf(pcVar11,(ulong)uVar5)" (identifier "printf") (argument_list "(pcVar11,(ulong)uVar5)" (( "(") (identifier "pcVar11") (, ",") (cast_expression "(ulong)uVar5" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar5")) () ")"))) (; ";")) (if_statement "if (uVar5 != 5) goto LAB_00118a22;" (if "if") (parenthesized_expression "(uVar5 != 5)" (( "(") (binary_expression "uVar5 != 5" (identifier "uVar5") (!= "!=") (number_literal "5")) () ")")) (goto_statement "goto LAB_00118a22;" (goto "goto") (statement_identifier "LAB_00118a22") (; ";"))) (expression_statement "piVar24 = piVar30 + 1;" (assignment_expression "piVar24 = piVar30 + 1" (identifier "piVar24") (= "=") (binary_expression "piVar30 + 1" (identifier "piVar30") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (piVar24 < local_c8) {\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }\n        else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }" (if "if") (parenthesized_expression "(piVar24 < local_c8)" (( "(") (binary_expression "piVar24 < local_c8" (identifier "piVar24") (< "<") (identifier "local_c8")) () ")")) (compound_statement "{\n          lVar22 = 2;\nLAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);\n          if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }\n          if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;\n          uVar7 = (*DAT_00159e20)(piVar24,lVar22);\n          if (uVar7 == 0) goto LAB_00118b74;\n        }" ({ "{") (expression_statement "lVar22 = 2;" (assignment_expression "lVar22 = 2" (identifier "lVar22") (= "=") (number_literal "2")) (; ";")) (labeled_statement "LAB_00119876:\n          sVar6 = (*DAT_00159e20)(piVar29,lVar22);" (statement_identifier "LAB_00119876") (: ":") (expression_statement "sVar6 = (*DAT_00159e20)(piVar29,lVar22);" (assignment_expression "sVar6 = (*DAT_00159e20)(piVar29,lVar22)" (identifier "sVar6") (= "=") (call_expression "(*DAT_00159e20)(piVar29,lVar22)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar29,lVar22)" (( "(") (identifier "piVar29") (, ",") (identifier "lVar22") () ")")))) (; ";"))) (if_statement "if (sVar6 != 0) {\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }" (if "if") (parenthesized_expression "(sVar6 != 0)" (( "(") (binary_expression "sVar6 != 0" (identifier "sVar6") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);\n            warn(uVar12,sVar6);\n          }" ({ "{") (expression_statement "uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)" (identifier "dcgettext") (argument_list "(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Padding field of .debug_names must be 0 (found 0x%x)\n"" (" """) (string_content "Padding field of .debug_names must be 0 (found 0x%x)") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar12,sVar6);" (call_expression "warn(uVar12,sVar6)" (identifier "warn") (argument_list "(uVar12,sVar6)" (( "(") (identifier "uVar12") (, ",") (identifier "sVar6") () ")"))) (; ";")) (} "}"))) (if_statement "if (piVar30 + 2 < local_c8) {\nLAB_00118b5e:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;" (if "if") (parenthesized_expression "(piVar30 + 2 < local_c8)" (( "(") (binary_expression "piVar30 + 2 < local_c8" (binary_expression "piVar30 + 2" (identifier "piVar30") (+ "+") (number_literal "2")) (< "<") (identifier "local_c8")) () ")")) (compound_statement "{\nLAB_00118b5e:\n            lVar22 = 4;\n          }" ({ "{") (labeled_statement "LAB_00118b5e:\n            lVar22 = 4;" (statement_identifier "LAB_00118b5e") (: ":") (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" (identifier "lVar22") (= "=") (number_literal "4")) (; ";"))) (} "}")) (else_clause "else if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;" (else "else") (if_statement "if ((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))\n          goto LAB_00118b74;" (if "if") (parenthesized_expression "((local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))" (( "(") (binary_expression "(local_c8 <= piVar24) ||\n                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U)" (parenthesized_expression "(local_c8 <= piVar24)" (( "(") (binary_expression "local_c8 <= piVar24" (identifier "local_c8") (<= "<=") (identifier "piVar24")) () ")")) (|| "||") (parenthesized_expression "(lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U)" (( "(") (comma_expression "lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U" (assignment_expression "lVar22 = (long)local_c8 - (long)piVar24" (identifier "lVar22") (= "=") (binary_expression "(long)local_c8 - (long)piVar24" (cast_expression "(long)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_c8")) (- "-") (cast_expression "(long)piVar24" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar24")))) (, ",") (binary_expression "7 < (int)lVar22 - 1U" (number_literal "7") (< "<") (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "lVar22")) (- "-") (number_literal "1U")))) () ")"))) () ")")) (goto_statement "goto LAB_00118b74;" (goto "goto") (statement_identifier "LAB_00118b74") (; ";"))))) (expression_statement "uVar7 = (*DAT_00159e20)(piVar24,lVar22);" (assignment_expression "uVar7 = (*DAT_00159e20)(piVar24,lVar22)" (identifier "uVar7") (= "=") (call_expression "(*DAT_00159e20)(piVar24,lVar22)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar24,lVar22)" (( "(") (identifier "piVar24") (, ",") (identifier "lVar22") () ")")))) (; ";")) (if_statement "if (uVar7 == 0) goto LAB_00118b74;" (if "if") (parenthesized_expression "(uVar7 == 0)" (( "(") (binary_expression "uVar7 == 0" (identifier "uVar7") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00118b74;" (goto "goto") (statement_identifier "LAB_00118b74") (; ";"))) (} "}")) (else_clause "else {\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }" (else "else") (compound_statement "{\n          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;\n          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;\nLAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);\n          warn(uVar12);\n          uVar7 = 0;\n        }" ({ "{") (if_statement "if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))\n          goto LAB_00119876;" (if "if") (parenthesized_expression "((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))" (( "(") (binary_expression "(piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8)" (parenthesized_expression "(piVar29 < local_c8)" (( "(") (binary_expression "piVar29 < local_c8" (identifier "piVar29") (< "<") (identifier "local_c8")) () ")")) (&& "&&") (parenthesized_expression "(lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8)" (( "(") (comma_expression "lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8" (assignment_expression "lVar22 = uVar21 - 2" (identifier "lVar22") (= "=") (binary_expression "uVar21 - 2" (identifier "uVar21") (- "-") (number_literal "2"))) (, ",") (binary_expression "(int)lVar22 - 1U < 8" (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "lVar22")) (- "-") (number_literal "1U")) (< "<") (number_literal "8"))) () ")"))) () ")")) (goto_statement "goto LAB_00119876;" (goto "goto") (statement_identifier "LAB_00119876") (; ";"))) (if_statement "if (piVar30 + 2 < local_c8) goto LAB_00118b5e;" (if "if") (parenthesized_expression "(piVar30 + 2 < local_c8)" (( "(") (binary_expression "piVar30 + 2 < local_c8" (binary_expression "piVar30 + 2" (identifier "piVar30") (+ "+") (number_literal "2")) (< "<") (identifier "local_c8")) () ")")) (goto_statement "goto LAB_00118b5e;" (goto "goto") (statement_identifier "LAB_00118b5e") (; ";"))) (labeled_statement "LAB_00118b74:\n          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);" (statement_identifier "LAB_00118b74") (: ":") (expression_statement "uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5)" (identifier "dcgettext") (argument_list "(0,"Compilation unit count must be >= 1 in .debug_names\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Compilation unit count must be >= 1 in .debug_names\n"" (" """) (string_content "Compilation unit count must be >= 1 in .debug_names") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";"))) (expression_statement "warn(uVar12);" (call_expression "warn(uVar12)" (identifier "warn") (argument_list "(uVar12)" (( "(") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "uVar7 = 0;" (assignment_expression "uVar7 = 0" (identifier "uVar7") (= "=") (number_literal "0")) (; ";")) (} "}")))) (expression_statement "piVar24 = piVar30 + 2;" (assignment_expression "piVar24 = piVar30 + 2" (identifier "piVar24") (= "=") (binary_expression "piVar30 + 2" (identifier "piVar30") (+ "+") (number_literal "2"))) (; ";")) (expression_statement "piVar29 = piVar30 + 3;" (assignment_expression "piVar29 = piVar30 + 3" (identifier "piVar29") (= "=") (binary_expression "piVar30 + 3" (identifier "piVar30") (+ "+") (number_literal "3"))) (; ";")) (expression_statement "iVar3 = (int)local_c8;" (assignment_expression "iVar3 = (int)local_c8" (identifier "iVar3") (= "=") (cast_expression "(int)local_c8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_c8"))) (; ";")) (if_statement "if (piVar29 < local_c8) {\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }\n        else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }" (if "if") (parenthesized_expression "(piVar29 < local_c8)" (( "(") (binary_expression "piVar29 < local_c8" (identifier "piVar29") (< "<") (identifier "local_c8")) () ")")) (compound_statement "{\n          lVar22 = 4;\nLAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);\n          if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;\n          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);\n          if (piVar30 + 5 < local_c8) goto LAB_001195e0;\n          if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;\nLAB_00118beb:\n          local_b8 = 0;\n          local_84 = 0;\n          local_90 = 0;\n          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;\nLAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }\n          piVar29 = piVar30 + 8;\n          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);\n          uVar20 = uVar9;\n          if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }\n        }" ({ "{") (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" (identifier "lVar22") (= "=") (number_literal "4")) (; ";")) (labeled_statement "LAB_00119825:\n          uVar8 = (*DAT_00159e20)(piVar24,lVar22);" (statement_identifier "LAB_00119825") (: ":") (expression_statement "uVar8 = (*DAT_00159e20)(piVar24,lVar22);" (assignment_expression "uVar8 = (*DAT_00159e20)(piVar24,lVar22)" (identifier "uVar8") (= "=") (call_expression "(*DAT_00159e20)(piVar24,lVar22)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar24,lVar22)" (( "(") (identifier "piVar24") (, ",") (identifier "lVar22") () ")")))) (; ";"))) (if_statement "if (piVar30 + 4 < local_c8) {\nLAB_001197d8:\n            lVar22 = 4;\n          }\n          else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;" (if "if") (parenthesized_expression "(piVar30 + 4 < local_c8)" (( "(") (binary_expression "piVar30 + 4 < local_c8" (binary_expression "piVar30 + 4" (identifier "piVar30") (+ "+") (number_literal "4")) (< "<") (identifier "local_c8")) () ")")) (compound_statement "{\nLAB_001197d8:\n            lVar22 = 4;\n          }" ({ "{") (labeled_statement "LAB_001197d8:\n            lVar22 = 4;" (statement_identifier "LAB_001197d8") (: ":") (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" (identifier "lVar22") (= "=") (number_literal "4")) (; ";"))) (} "}")) (else_clause "else if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;" (else "else") (if_statement "if ((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))\n          goto LAB_00118bd4;" (if "if") (parenthesized_expression "((local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))" (( "(") (binary_expression "(local_c8 <= piVar29) ||\n                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U)" (parenthesized_expression "(local_c8 <= piVar29)" (( "(") (binary_expression "local_c8 <= piVar29" (identifier "local_c8") (<= "<=") (identifier "piVar29")) () ")")) (|| "||") (parenthesized_expression "(lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U)" (( "(") (comma_expression "lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U" (assignment_expression "lVar22 = (long)local_c8 - (long)piVar29" (identifier "lVar22") (= "=") (binary_expression "(long)local_c8 - (long)piVar29" (cast_expression "(long)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_c8")) (- "-") (cast_expression "(long)piVar29" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar29")))) (, ",") (binary_expression "7 < (int)lVar22 - 1U" (number_literal "7") (< "<") (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "lVar22")) (- "-") (number_literal "1U")))) () ")"))) () ")")) (goto_statement "goto LAB_00118bd4;" (goto "goto") (statement_identifier "LAB_00118bd4") (; ";"))))) (expression_statement "local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);" (assignment_expression "local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22)" (field_expression "local_98._0_4_" (identifier "local_98") (. ".") (field_identifier "_0_4_")) (= "=") (call_expression "(*DAT_00159e20)(piVar29,lVar22)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar29,lVar22)" (( "(") (identifier "piVar29") (, ",") (identifier "lVar22") () ")")))) (; ";")) (if_statement "if (piVar30 + 5 < local_c8) goto LAB_001195e0;" (if "if") (parenthesized_expression "(piVar30 + 5 < local_c8)" (( "(") (binary_expression "piVar30 + 5 < local_c8" (binary_expression "piVar30 + 5" (identifier "piVar30") (+ "+") (number_literal "5")) (< "<") (identifier "local_c8")) () ")")) (goto_statement "goto LAB_001195e0;" (goto "goto") (statement_identifier "LAB_001195e0") (; ";"))) (if_statement "if ((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))\n          goto LAB_001195e5;" (if "if") (parenthesized_expression "((piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))" (( "(") (binary_expression "(piVar30 + 4 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8)" (parenthesized_expression "(piVar30 + 4 < local_c8)" (( "(") (binary_expression "piVar30 + 4 < local_c8" (binary_expression "piVar30 + 4" (identifier "piVar30") (+ "+") (number_literal "4")) (< "<") (identifier "local_c8")) () ")")) (&& "&&") (parenthesized_expression "(lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8)" (( "(") (comma_expression "lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8" (assignment_expression "lVar22 = (long)local_c8 - (long)(piVar30 + 4)" (identifier "lVar22") (= "=") (binary_expression "(long)local_c8 - (long)(piVar30 + 4)" (cast_expression "(long)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_c8")) (- "-") (cast_expression "(long)(piVar30 + 4)" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (parenthesized_expression "(piVar30 + 4)" (( "(") (binary_expression "piVar30 + 4" (identifier "piVar30") (+ "+") (number_literal "4")) () ")"))))) (, ",") (binary_expression "(int)lVar22 - 1U < 8" (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "lVar22")) (- "-") (number_literal "1U")) (< "<") (number_literal "8"))) () ")"))) () ")")) (goto_statement "goto LAB_001195e5;" (goto "goto") (statement_identifier "LAB_001195e5") (; ";"))) (labeled_statement "LAB_00118beb:\n          local_b8 = 0;" (statement_identifier "LAB_00118beb") (: ":") (expression_statement "local_b8 = 0;" (assignment_expression "local_b8 = 0" (identifier "local_b8") (= "=") (number_literal "0")) (; ";"))) (expression_statement "local_84 = 0;" (assignment_expression "local_84 = 0" (identifier "local_84") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_90 = 0;" (assignment_expression "local_90 = 0" (identifier "local_90") (= "=") (number_literal "0")) (; ";")) (if_statement "if (local_c8 <= piVar30 + 6) goto LAB_00118c14;" (if "if") (parenthesized_expression "(local_c8 <= piVar30 + 6)" (( "(") (binary_expression "local_c8 <= piVar30 + 6" (identifier "local_c8") (<= "<=") (binary_expression "piVar30 + 6" (identifier "piVar30") (+ "+") (number_literal "6"))) () ")")) (goto_statement "goto LAB_00118c14;" (goto "goto") (statement_identifier "LAB_00118c14") (; ";"))) (labeled_statement "LAB_0011975e:\n          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);" (statement_identifier "LAB_0011975e") (: ":") (expression_statement "local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);" (assignment_expression "local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4)" (field_expression "local_a0._0_4_" (identifier "local_a0") (. ".") (field_identifier "_0_4_")) (= "=") (call_expression "(*DAT_00159e20)(piVar30 + 5,4)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar30 + 5,4)" (( "(") (binary_expression "piVar30 + 5" (identifier "piVar30") (+ "+") (number_literal "5")) (, ",") (number_literal "4") () ")")))) (; ";"))) (expression_statement "local_d0 = (ulong)(uint)local_a0;" (assignment_expression "local_d0 = (ulong)(uint)local_a0" (identifier "local_d0") (= "=") (cast_expression "(ulong)(uint)local_a0" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (cast_expression "(uint)local_a0" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_a0")))) (; ";")) (expression_statement "local_b0 = (ulong)((uint)local_a0 * local_88);" (assignment_expression "local_b0 = (ulong)((uint)local_a0 * local_88)" (identifier "local_b0") (= "=") (call_expression "(ulong)((uint)local_a0 * local_88)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "((uint)local_a0 * local_88)" (( "(") (binary_expression "(uint)local_a0 * local_88" (cast_expression "(uint)local_a0" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_a0")) (* "*") (identifier "local_88")) () ")")))) (; ";")) (expression_statement "local_a8 = local_d0 << 2;" (assignment_expression "local_a8 = local_d0 << 2" (identifier "local_a8") (= "=") (binary_expression "local_d0 << 2" (identifier "local_d0") (<< "<<") (number_literal "2"))) (; ";")) (if_statement "if (piVar30 + 7 < local_c8) {\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }\n          else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }" (if "if") (parenthesized_expression "(piVar30 + 7 < local_c8)" (( "(") (binary_expression "piVar30 + 7 < local_c8" (binary_expression "piVar30 + 7" (identifier "piVar30") (+ "+") (number_literal "7")) (< "<") (identifier "local_c8")) () ")")) (compound_statement "{\nLAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);\n            if (piVar30 + 8 < local_c8) goto LAB_00119860;\n            local_c0 = (ulong)uVar20;\n            lVar22 = (long)local_c8 - (long)(piVar30 + 7);\n            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;\n          }" ({ "{") (labeled_statement "LAB_00119667:\n            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);" (statement_identifier "LAB_00119667") (: ":") (expression_statement "uVar20 = (*DAT_00159e20)(piVar30 + 6,4);" (assignment_expression "uVar20 = (*DAT_00159e20)(piVar30 + 6,4)" (identifier "uVar20") (= "=") (call_expression "(*DAT_00159e20)(piVar30 + 6,4)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar30 + 6,4)" (( "(") (binary_expression "piVar30 + 6" (identifier "piVar30") (+ "+") (number_literal "6")) (, ",") (number_literal "4") () ")")))) (; ";"))) (if_statement "if (piVar30 + 8 < local_c8) goto LAB_00119860;" (if "if") (parenthesized_expression "(piVar30 + 8 < local_c8)" (( "(") (binary_expression "piVar30 + 8 < local_c8" (binary_expression "piVar30 + 8" (identifier "piVar30") (+ "+") (number_literal "8")) (< "<") (identifier "local_c8")) () ")")) (goto_statement "goto LAB_00119860;" (goto "goto") (statement_identifier "LAB_00119860") (; ";"))) (expression_statement "local_c0 = (ulong)uVar20;" (assignment_expression "local_c0 = (ulong)uVar20" (identifier "local_c0") (= "=") (cast_expression "(ulong)uVar20" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar20"))) (; ";")) (expression_statement "lVar22 = (long)local_c8 - (long)(piVar30 + 7);" (assignment_expression "lVar22 = (long)local_c8 - (long)(piVar30 + 7)" (identifier "lVar22") (= "=") (binary_expression "(long)local_c8 - (long)(piVar30 + 7)" (cast_expression "(long)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_c8")) (- "-") (cast_expression "(long)(piVar30 + 7)" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (parenthesized_expression "(piVar30 + 7)" (( "(") (binary_expression "piVar30 + 7" (identifier "piVar30") (+ "+") (number_literal "7")) () ")"))))) (; ";")) (if_statement "if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;" (if "if") (parenthesized_expression "(7 < (int)lVar22 - 1U)" (( "(") (binary_expression "7 < (int)lVar22 - 1U" (number_literal "7") (< "<") (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "lVar22")) (- "-") (number_literal "1U"))) () ")")) (goto_statement "goto LAB_00118c5e;" (goto "goto") (statement_identifier "LAB_00118c5e") (; ";"))) (} "}")) (else_clause "else {\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }" (else "else") (compound_statement "{\n            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;\n            uVar20 = (*DAT_00159e20)(piVar30 + 6);\n            if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }\nLAB_00119860:\n            local_c0 = (ulong)uVar20;\nLAB_00119867:\n            lVar22 = 4;\n          }" ({ "{") (if_statement "if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;" (if "if") (parenthesized_expression "(7 < (iVar3 - (int)(piVar30 + 6)) - 1U)" (( "(") (binary_expression "7 < (iVar3 - (int)(piVar30 + 6)) - 1U" (number_literal "7") (< "<") (binary_expression "(iVar3 - (int)(piVar30 + 6)) - 1U" (parenthesized_expression "(iVar3 - (int)(piVar30 + 6))" (( "(") (binary_expression "iVar3 - (int)(piVar30 + 6)" (identifier "iVar3") (- "-") (cast_expression "(int)(piVar30 + 6)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar30 + 6)" (( "(") (binary_expression "piVar30 + 6" (identifier "piVar30") (+ "+") (number_literal "6")) () ")")))) () ")")) (- "-") (number_literal "1U"))) () ")")) (goto_statement "goto LAB_00118c46;" (goto "goto") (statement_identifier "LAB_00118c46") (; ";"))) (expression_statement "uVar20 = (*DAT_00159e20)(piVar30 + 6);" (assignment_expression "uVar20 = (*DAT_00159e20)(piVar30 + 6)" (identifier "uVar20") (= "=") (call_expression "(*DAT_00159e20)(piVar30 + 6)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar30 + 6)" (( "(") (binary_expression "piVar30 + 6" (identifier "piVar30") (+ "+") (number_literal "6")) () ")")))) (; ";")) (if_statement "if (local_c8 <= piVar30 + 8) {\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }" (if "if") (parenthesized_expression "(local_c8 <= piVar30 + 8)" (( "(") (binary_expression "local_c8 <= piVar30 + 8" (identifier "local_c8") (<= "<=") (binary_expression "piVar30 + 8" (identifier "piVar30") (+ "+") (number_literal "8"))) () ")")) (compound_statement "{\n              local_c0 = (ulong)uVar20;\n              goto LAB_00118c5e;\n            }" ({ "{") (expression_statement "local_c0 = (ulong)uVar20;" (assignment_expression "local_c0 = (ulong)uVar20" (identifier "local_c0") (= "=") (cast_expression "(ulong)uVar20" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar20"))) (; ";")) (goto_statement "goto LAB_00118c5e;" (goto "goto") (statement_identifier "LAB_00118c5e") (; ";")) (} "}"))) (labeled_statement "LAB_00119860:\n            local_c0 = (ulong)uVar20;" (statement_identifier "LAB_00119860") (: ":") (expression_statement "local_c0 = (ulong)uVar20;" (assignment_expression "local_c0 = (ulong)uVar20" (identifier "local_c0") (= "=") (cast_expression "(ulong)uVar20" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar20"))) (; ";"))) (labeled_statement "LAB_00119867:\n            lVar22 = 4;" (statement_identifier "LAB_00119867") (: ":") (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" (identifier "lVar22") (= "=") (number_literal "4")) (; ";"))) (} "}")))) (expression_statement "piVar29 = piVar30 + 8;" (assignment_expression "piVar29 = piVar30 + 8" (identifier "piVar29") (= "=") (binary_expression "piVar30 + 8" (identifier "piVar30") (+ "+") (number_literal "8"))) (; ";")) (expression_statement "uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);" (assignment_expression "uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22)" (identifier "uVar9") (= "=") (call_expression "(*DAT_00159e20)(piVar30 + 7,lVar22)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar30 + 7,lVar22)" (( "(") (binary_expression "piVar30 + 7" (identifier "piVar30") (+ "+") (number_literal "7")) (, ",") (identifier "lVar22") () ")")))) (; ";")) (expression_statement "uVar20 = uVar9;" (assignment_expression "uVar20 = uVar9" (identifier "uVar20") (= "=") (identifier "uVar9")) (; ";")) (if_statement "if ((uVar9 & 3) != 0) {\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }" (if "if") (parenthesized_expression "((uVar9 & 3) != 0)" (( "(") (binary_expression "(uVar9 & 3) != 0" (parenthesized_expression "(uVar9 & 3)" (( "(") (binary_expression "uVar9 & 3" (identifier "uVar9") (& "&") (number_literal "3")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);\n            uVar20 = (-uVar9 & 3) + uVar9;\n            warn(uVar12,uVar9);\n          }" ({ "{") (expression_statement "uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5)" (identifier "dcgettext") (argument_list "(0,\n                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"\n                               ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"" (" """) (string_content "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "uVar20 = (-uVar9 & 3) + uVar9;" (assignment_expression "uVar20 = (-uVar9 & 3) + uVar9" (identifier "uVar20") (= "=") (binary_expression "(-uVar9 & 3) + uVar9" (parenthesized_expression "(-uVar9 & 3)" (( "(") (binary_expression "-uVar9 & 3" (unary_expression "-uVar9" (- "-") (identifier "uVar9")) (& "&") (number_literal "3")) () ")")) (+ "+") (identifier "uVar9"))) (; ";")) (expression_statement "warn(uVar12,uVar9);" (call_expression "warn(uVar12,uVar9)" (identifier "warn") (argument_list "(uVar12,uVar9)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar9") () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Augmentation string:",5)" (identifier "pcVar11") (= "=") (cast_expression "(char *)dcgettext(0,"Augmentation string:",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"Augmentation string:",5)" (identifier "dcgettext") (argument_list "(0,"Augmentation string:",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Augmentation string:"" (" """) (string_content "Augmentation string:") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" (identifier "printf") (argument_list "(pcVar11)" (( "(") (identifier "pcVar11") () ")"))) (; ";")) (if_statement "if (uVar20 != 0) {\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }" (if "if") (parenthesized_expression "(uVar20 != 0)" (( "(") (binary_expression "uVar20 != 0" (identifier "uVar20") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);\n            piVar24 = piVar29;\n            do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);\n          }" ({ "{") (expression_statement "piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);" (assignment_expression "piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21)" (identifier "piVar30") (= "=") (cast_expression "(int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)piVar30 + (ulong)(uVar20 - 1) + 0x21)" (( "(") (binary_expression "(long)piVar30 + (ulong)(uVar20 - 1) + 0x21" (binary_expression "(long)piVar30 + (ulong)(uVar20 - 1)" (cast_expression "(long)piVar30" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar30")) (+ "+") (call_expression "(ulong)(uVar20 - 1)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar20 - 1)" (( "(") (binary_expression "uVar20 - 1" (identifier "uVar20") (- "-") (number_literal "1")) () ")")))) (+ "+") (number_literal "0x21")) () ")")))) (; ";")) (expression_statement "piVar24 = piVar29;" (assignment_expression "piVar24 = piVar29" (identifier "piVar24") (= "=") (identifier "piVar29")) (; ";")) (do_statement "do {\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            } while (piVar1 != piVar30);" (do "do") (compound_statement "{\n              piVar1 = (int *)((long)piVar24 + 1);\n              if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }\n              printf(" %02x",uVar21);\n              piVar24 = piVar1;\n              piVar29 = piVar30;\n            }" ({ "{") (expression_statement "piVar1 = (int *)((long)piVar24 + 1);" (assignment_expression "piVar1 = (int *)((long)piVar24 + 1)" (identifier "piVar1") (= "=") (cast_expression "(int *)((long)piVar24 + 1)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)piVar24 + 1)" (( "(") (binary_expression "(long)piVar24 + 1" (cast_expression "(long)piVar24" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar24")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (if_statement "if (piVar1 < local_c8) {\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }\n              else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }" (if "if") (parenthesized_expression "(piVar1 < local_c8)" (( "(") (binary_expression "piVar1 < local_c8" (identifier "piVar1") (< "<") (identifier "local_c8")) () ")")) (compound_statement "{\n                uVar21 = 1;\nLAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);\n                uVar21 = (ulong)bVar4;\n              }" ({ "{") (expression_statement "uVar21 = 1;" (assignment_expression "uVar21 = 1" (identifier "uVar21") (= "=") (number_literal "1")) (; ";")) (labeled_statement "LAB_00119753:\n                bVar4 = (*DAT_00159e20)(piVar24,uVar21);" (statement_identifier "LAB_00119753") (: ":") (expression_statement "bVar4 = (*DAT_00159e20)(piVar24,uVar21);" (assignment_expression "bVar4 = (*DAT_00159e20)(piVar24,uVar21)" (identifier "bVar4") (= "=") (call_expression "(*DAT_00159e20)(piVar24,uVar21)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar24,uVar21)" (( "(") (identifier "piVar24") (, ",") (identifier "uVar21") () ")")))) (; ";"))) (expression_statement "uVar21 = (ulong)bVar4;" (assignment_expression "uVar21 = (ulong)bVar4" (identifier "uVar21") (= "=") (cast_expression "(ulong)bVar4" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar4"))) (; ";")) (} "}")) (else_clause "else {\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }" (else "else") (compound_statement "{\n                uVar21 = 0;\n                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }\n              }" ({ "{") (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" (identifier "uVar21") (= "=") (number_literal "0")) (; ";")) (if_statement "if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }" (if "if") (parenthesized_expression "((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8))" (( "(") (binary_expression "(piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)" (parenthesized_expression "(piVar24 < local_c8)" (( "(") (binary_expression "piVar24 < local_c8" (identifier "piVar24") (< "<") (identifier "local_c8")) () ")")) (&& "&&") (parenthesized_expression "((int)((long)local_c8 - (long)piVar24) - 1U < 8)" (( "(") (binary_expression "(int)((long)local_c8 - (long)piVar24) - 1U < 8" (binary_expression "(int)((long)local_c8 - (long)piVar24) - 1U" (cast_expression "(int)((long)local_c8 - (long)piVar24)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((long)local_c8 - (long)piVar24)" (( "(") (binary_expression "(long)local_c8 - (long)piVar24" (cast_expression "(long)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_c8")) (- "-") (cast_expression "(long)piVar24" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar24"))) () ")"))) (- "-") (number_literal "1U")) (< "<") (number_literal "8")) () ")"))) () ")")) (compound_statement "{\n                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;\n                  goto LAB_00119753;\n                }" ({ "{") (expression_statement "uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;" (assignment_expression "uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff" (identifier "uVar21") (= "=") (binary_expression "(long)local_c8 - (long)piVar24 & 0xffffffff" (binary_expression "(long)local_c8 - (long)piVar24" (cast_expression "(long)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_c8")) (- "-") (cast_expression "(long)piVar24" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar24"))) (& "&") (number_literal "0xffffffff"))) (; ";")) (goto_statement "goto LAB_00119753;" (goto "goto") (statement_identifier "LAB_00119753") (; ";")) (} "}"))) (} "}")))) (expression_statement "printf(" %02x",uVar21);" (call_expression "printf(" %02x",uVar21)" (identifier "printf") (argument_list "(" %02x",uVar21)" (( "(") (string_literal "" %02x"" (" """) (string_content " %02x") (" """)) (, ",") (identifier "uVar21") () ")"))) (; ";")) (expression_statement "piVar24 = piVar1;" (assignment_expression "piVar24 = piVar1" (identifier "piVar24") (= "=") (identifier "piVar1")) (; ";")) (expression_statement "piVar29 = piVar30;" (assignment_expression "piVar29 = piVar30" (identifier "piVar29") (= "=") (identifier "piVar30")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(piVar1 != piVar30)" (( "(") (binary_expression "piVar1 != piVar30" (identifier "piVar1") (!= "!=") (identifier "piVar30")) () ")")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }" (else "else") (compound_statement "{\n          if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;\n          uVar8 = 0;\n          if (piVar30 + 4 < local_c8) goto LAB_001197d8;\nLAB_00118bd4:\n          local_98._0_4_ = 0;\n          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;\nLAB_001195e0:\n          lVar22 = 4;\nLAB_001195e5:\n          piVar29 = piVar30 + 5;\n          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);\n          local_b8 = (ulong)local_84;\n          local_90 = local_b8 << 2;\n          if (piVar30 + 6 < local_c8) goto LAB_0011975e;\n          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }\n          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);\n          local_d0 = (ulong)(uint)local_a0;\n          local_b0 = (ulong)((uint)local_a0 * local_88);\n          local_a8 = local_d0 << 2;\n          if (piVar30 + 7 < local_c8) goto LAB_00119667;\nLAB_00118c46:\n          local_c0 = 0;\n          if (piVar30 + 8 < local_c8) goto LAB_00119867;\nLAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);\n          printf(pcVar11);\n          piVar29 = piVar30 + 8;\n        }" ({ "{") (if_statement "if ((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;" (if "if") (parenthesized_expression "((piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8))" (( "(") (binary_expression "(piVar24 < local_c8) &&\n             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)" (parenthesized_expression "(piVar24 < local_c8)" (( "(") (binary_expression "piVar24 < local_c8" (identifier "piVar24") (< "<") (identifier "local_c8")) () ")")) (&& "&&") (parenthesized_expression "(lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)" (( "(") (comma_expression "lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8" (assignment_expression "lVar22 = (long)local_c8 - (long)piVar24" (identifier "lVar22") (= "=") (binary_expression "(long)local_c8 - (long)piVar24" (cast_expression "(long)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_c8")) (- "-") (cast_expression "(long)piVar24" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar24")))) (, ",") (binary_expression "(int)lVar22 - 1U < 8" (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "lVar22")) (- "-") (number_literal "1U")) (< "<") (number_literal "8"))) () ")"))) () ")")) (goto_statement "goto LAB_00119825;" (goto "goto") (statement_identifier "LAB_00119825") (; ";"))) (expression_statement "uVar8 = 0;" (assignment_expression "uVar8 = 0" (identifier "uVar8") (= "=") (number_literal "0")) (; ";")) (if_statement "if (piVar30 + 4 < local_c8) goto LAB_001197d8;" (if "if") (parenthesized_expression "(piVar30 + 4 < local_c8)" (( "(") (binary_expression "piVar30 + 4 < local_c8" (binary_expression "piVar30 + 4" (identifier "piVar30") (+ "+") (number_literal "4")) (< "<") (identifier "local_c8")) () ")")) (goto_statement "goto LAB_001197d8;" (goto "goto") (statement_identifier "LAB_001197d8") (; ";"))) (labeled_statement "LAB_00118bd4:\n          local_98._0_4_ = 0;" (statement_identifier "LAB_00118bd4") (: ":") (expression_statement "local_98._0_4_ = 0;" (assignment_expression "local_98._0_4_ = 0" (field_expression "local_98._0_4_" (identifier "local_98") (. ".") (field_identifier "_0_4_")) (= "=") (number_literal "0")) (; ";"))) (if_statement "if (local_c8 <= piVar30 + 5) goto LAB_00118beb;" (if "if") (parenthesized_expression "(local_c8 <= piVar30 + 5)" (( "(") (binary_expression "local_c8 <= piVar30 + 5" (identifier "local_c8") (<= "<=") (binary_expression "piVar30 + 5" (identifier "piVar30") (+ "+") (number_literal "5"))) () ")")) (goto_statement "goto LAB_00118beb;" (goto "goto") (statement_identifier "LAB_00118beb") (; ";"))) (labeled_statement "LAB_001195e0:\n          lVar22 = 4;" (statement_identifier "LAB_001195e0") (: ":") (expression_statement "lVar22 = 4;" (assignment_expression "lVar22 = 4" (identifier "lVar22") (= "=") (number_literal "4")) (; ";"))) (labeled_statement "LAB_001195e5:\n          piVar29 = piVar30 + 5;" (statement_identifier "LAB_001195e5") (: ":") (expression_statement "piVar29 = piVar30 + 5;" (assignment_expression "piVar29 = piVar30 + 5" (identifier "piVar29") (= "=") (binary_expression "piVar30 + 5" (identifier "piVar30") (+ "+") (number_literal "5"))) (; ";"))) (expression_statement "local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);" (assignment_expression "local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22)" (identifier "local_84") (= "=") (call_expression "(*DAT_00159e20)(piVar30 + 4,lVar22)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar30 + 4,lVar22)" (( "(") (binary_expression "piVar30 + 4" (identifier "piVar30") (+ "+") (number_literal "4")) (, ",") (identifier "lVar22") () ")")))) (; ";")) (expression_statement "local_b8 = (ulong)local_84;" (assignment_expression "local_b8 = (ulong)local_84" (identifier "local_b8") (= "=") (cast_expression "(ulong)local_84" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "local_84"))) (; ";")) (expression_statement "local_90 = local_b8 << 2;" (assignment_expression "local_90 = local_b8 << 2" (identifier "local_90") (= "=") (binary_expression "local_b8 << 2" (identifier "local_b8") (<< "<<") (number_literal "2"))) (; ";")) (if_statement "if (piVar30 + 6 < local_c8) goto LAB_0011975e;" (if "if") (parenthesized_expression "(piVar30 + 6 < local_c8)" (( "(") (binary_expression "piVar30 + 6 < local_c8" (binary_expression "piVar30 + 6" (identifier "piVar30") (+ "+") (number_literal "6")) (< "<") (identifier "local_c8")) () ")")) (goto_statement "goto LAB_0011975e;" (goto "goto") (statement_identifier "LAB_0011975e") (; ";"))) (if_statement "if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }" (if "if") (parenthesized_expression "((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U))" (( "(") (binary_expression "(local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)" (parenthesized_expression "(local_c8 <= piVar29)" (( "(") (binary_expression "local_c8 <= piVar29" (identifier "local_c8") (<= "<=") (identifier "piVar29")) () ")")) (|| "||") (parenthesized_expression "(7 < (int)((long)local_c8 - (long)piVar29) - 1U)" (( "(") (binary_expression "7 < (int)((long)local_c8 - (long)piVar29) - 1U" (number_literal "7") (< "<") (binary_expression "(int)((long)local_c8 - (long)piVar29) - 1U" (cast_expression "(int)((long)local_c8 - (long)piVar29)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((long)local_c8 - (long)piVar29)" (( "(") (binary_expression "(long)local_c8 - (long)piVar29" (cast_expression "(long)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_c8")) (- "-") (cast_expression "(long)piVar29" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar29"))) () ")"))) (- "-") (number_literal "1U"))) () ")"))) () ")")) (compound_statement "{\nLAB_00118c14:\n            local_a8 = 0;\n            local_d0 = 0;\n            local_b0 = 0;\n            local_a0._0_4_ = 0;\n            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;\n            goto LAB_00119667;\n          }" ({ "{") (labeled_statement "LAB_00118c14:\n            local_a8 = 0;" (statement_identifier "LAB_00118c14") (: ":") (expression_statement "local_a8 = 0;" (assignment_expression "local_a8 = 0" (identifier "local_a8") (= "=") (number_literal "0")) (; ";"))) (expression_statement "local_d0 = 0;" (assignment_expression "local_d0 = 0" (identifier "local_d0") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" (identifier "local_b0") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_a0._0_4_ = 0;" (assignment_expression "local_a0._0_4_ = 0" (field_expression "local_a0._0_4_" (identifier "local_a0") (. ".") (field_identifier "_0_4_")) (= "=") (number_literal "0")) (; ";")) (if_statement "if (local_c8 <= piVar30 + 7) goto LAB_00118c46;" (if "if") (parenthesized_expression "(local_c8 <= piVar30 + 7)" (( "(") (binary_expression "local_c8 <= piVar30 + 7" (identifier "local_c8") (<= "<=") (binary_expression "piVar30 + 7" (identifier "piVar30") (+ "+") (number_literal "7"))) () ")")) (goto_statement "goto LAB_00118c46;" (goto "goto") (statement_identifier "LAB_00118c46") (; ";"))) (goto_statement "goto LAB_00119667;" (goto "goto") (statement_identifier "LAB_00119667") (; ";")) (} "}"))) (expression_statement "local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);" (assignment_expression "local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29)" (field_expression "local_a0._0_4_" (identifier "local_a0") (. ".") (field_identifier "_0_4_")) (= "=") (call_expression "(*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar29,(long)local_c8 - (long)piVar29)" (( "(") (identifier "piVar29") (, ",") (binary_expression "(long)local_c8 - (long)piVar29" (cast_expression "(long)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_c8")) (- "-") (cast_expression "(long)piVar29" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar29"))) () ")")))) (; ";")) (expression_statement "local_d0 = (ulong)(uint)local_a0;" (assignment_expression "local_d0 = (ulong)(uint)local_a0" (identifier "local_d0") (= "=") (cast_expression "(ulong)(uint)local_a0" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (cast_expression "(uint)local_a0" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_a0")))) (; ";")) (expression_statement "local_b0 = (ulong)((uint)local_a0 * local_88);" (assignment_expression "local_b0 = (ulong)((uint)local_a0 * local_88)" (identifier "local_b0") (= "=") (call_expression "(ulong)((uint)local_a0 * local_88)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "((uint)local_a0 * local_88)" (( "(") (binary_expression "(uint)local_a0 * local_88" (cast_expression "(uint)local_a0" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_a0")) (* "*") (identifier "local_88")) () ")")))) (; ";")) (expression_statement "local_a8 = local_d0 << 2;" (assignment_expression "local_a8 = local_d0 << 2" (identifier "local_a8") (= "=") (binary_expression "local_d0 << 2" (identifier "local_d0") (<< "<<") (number_literal "2"))) (; ";")) (if_statement "if (piVar30 + 7 < local_c8) goto LAB_00119667;" (if "if") (parenthesized_expression "(piVar30 + 7 < local_c8)" (( "(") (binary_expression "piVar30 + 7 < local_c8" (binary_expression "piVar30 + 7" (identifier "piVar30") (+ "+") (number_literal "7")) (< "<") (identifier "local_c8")) () ")")) (goto_statement "goto LAB_00119667;" (goto "goto") (statement_identifier "LAB_00119667") (; ";"))) (labeled_statement "LAB_00118c46:\n          local_c0 = 0;" (statement_identifier "LAB_00118c46") (: ":") (expression_statement "local_c0 = 0;" (assignment_expression "local_c0 = 0" (identifier "local_c0") (= "=") (number_literal "0")) (; ";"))) (if_statement "if (piVar30 + 8 < local_c8) goto LAB_00119867;" (if "if") (parenthesized_expression "(piVar30 + 8 < local_c8)" (( "(") (binary_expression "piVar30 + 8 < local_c8" (binary_expression "piVar30 + 8" (identifier "piVar30") (+ "+") (number_literal "8")) (< "<") (identifier "local_c8")) () ")")) (goto_statement "goto LAB_00119867;" (goto "goto") (statement_identifier "LAB_00119867") (; ";"))) (labeled_statement "LAB_00118c5e:\n          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);" (statement_identifier "LAB_00118c5e") (: ":") (expression_statement "pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Augmentation string:",5)" (identifier "pcVar11") (= "=") (cast_expression "(char *)dcgettext(0,"Augmentation string:",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"Augmentation string:",5)" (identifier "dcgettext") (argument_list "(0,"Augmentation string:",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Augmentation string:"" (" """) (string_content "Augmentation string:") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";"))) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" (identifier "printf") (argument_list "(pcVar11)" (( "(") (identifier "pcVar11") () ")"))) (; ";")) (expression_statement "piVar29 = piVar30 + 8;" (assignment_expression "piVar29 = piVar30 + 8" (identifier "piVar29") (= "=") (binary_expression "piVar30 + 8" (identifier "piVar30") (+ "+") (number_literal "8"))) (; ";")) (} "}")))) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" (identifier "putc") (argument_list "(10,stdout)" (( "(") (number_literal "10") (, ",") (identifier "stdout") () ")"))) (; ";")) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" (identifier "putc") (argument_list "(10,stdout)" (( "(") (number_literal "10") (, ",") (identifier "stdout") () ")"))) (; ";")) (expression_statement "pcVar11 = (char *)dcgettext(0,"CU table:\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"CU table:\n",5)" (identifier "pcVar11") (= "=") (cast_expression "(char *)dcgettext(0,"CU table:\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"CU table:\n",5)" (identifier "dcgettext") (argument_list "(0,"CU table:\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""CU table:\n"" (" """) (string_content "CU table:") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" (identifier "printf") (argument_list "(pcVar11)" (( "(") (identifier "pcVar11") () ")"))) (; ";")) (if_statement "if (uVar7 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }" (if "if") (parenthesized_expression "(uVar7 != 0)" (( "(") (binary_expression "uVar7 != 0" (identifier "uVar7") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));\n        }" ({ "{") (expression_statement "uVar10 = (ulong)local_88;" (assignment_expression "uVar10 = (ulong)local_88" (identifier "uVar10") (= "=") (cast_expression "(ulong)local_88" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "local_88"))) (; ";")) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" (identifier "uVar21") (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" (identifier "piVar30") (= "=") (identifier "piVar29")) (; ";")) (do_statement "do {\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          } while (uVar20 != uVar7);" (do "do") (compound_statement "{\n            uVar25 = uVar21;\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar20 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            uVar20 = (int)uVar25 + 1;\n            printf(pcVar11,uVar25,uVar12);\n            uVar21 = (ulong)uVar20;\n            piVar30 = piVar24;\n          }" ({ "{") (expression_statement "uVar25 = uVar21;" (assignment_expression "uVar25 = uVar21" (identifier "uVar25") (= "=") (identifier "uVar21")) (; ";")) (expression_statement "piVar24 = (int *)((long)piVar30 + uVar10);" (assignment_expression "piVar24 = (int *)((long)piVar30 + uVar10)" (identifier "piVar24") (= "=") (cast_expression "(int *)((long)piVar30 + uVar10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)piVar30 + uVar10)" (( "(") (binary_expression "(long)piVar30 + uVar10" (cast_expression "(long)piVar30" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar30")) (+ "+") (identifier "uVar10")) () ")")))) (; ";")) (expression_statement "uVar20 = local_88;" (assignment_expression "uVar20 = local_88" (identifier "uVar20") (= "=") (identifier "local_88")) (; ";")) (if_statement "if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }" (if "if") (parenthesized_expression "((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8))))" (( "(") (binary_expression "(piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))" (parenthesized_expression "(piVar24 < local_c8)" (( "(") (binary_expression "piVar24 < local_c8" (identifier "piVar24") (< "<") (identifier "local_c8")) () ")")) (|| "||") (parenthesized_expression "((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))" (( "(") (parenthesized_expression "(uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8))" (( "(") (comma_expression "uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)" (assignment_expression "uVar12 = 0" (identifier "uVar12") (= "=") (number_literal "0")) (, ",") (binary_expression "(int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)" (binary_expression "(int *)((long)piVar24 - uVar10) < local_c8" (cast_expression "(int *)((long)piVar24 - uVar10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)piVar24 - uVar10)" (( "(") (binary_expression "(long)piVar24 - uVar10" (cast_expression "(long)piVar24" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar24")) (- "-") (identifier "uVar10")) () ")"))) (< "<") (identifier "local_c8")) (&& "&&") (parenthesized_expression "(uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)" (( "(") (comma_expression "uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8" (assignment_expression "uVar20 = iVar3 - (int)piVar30" (identifier "uVar20") (= "=") (binary_expression "iVar3 - (int)piVar30" (identifier "iVar3") (- "-") (cast_expression "(int)piVar30" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar30")))) (, ",") (binary_expression "uVar20 - 1 < 8" (binary_expression "uVar20 - 1" (identifier "uVar20") (- "-") (number_literal "1")) (< "<") (number_literal "8"))) () ")")))) () ")")) () ")"))) () ")")) (compound_statement "{\n              uVar12 = (*DAT_00159e20)(piVar30,uVar20);\n            }" ({ "{") (expression_statement "uVar12 = (*DAT_00159e20)(piVar30,uVar20);" (assignment_expression "uVar12 = (*DAT_00159e20)(piVar30,uVar20)" (identifier "uVar12") (= "=") (call_expression "(*DAT_00159e20)(piVar30,uVar20)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar30,uVar20)" (( "(") (identifier "piVar30") (, ",") (identifier "uVar20") () ")")))) (; ";")) (} "}"))) (expression_statement "pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5)" (identifier "pcVar11") (= "=") (cast_expression "(char *)dcgettext(0,"[%3u] 0x%lx\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"[%3u] 0x%lx\n",5)" (identifier "dcgettext") (argument_list "(0,"[%3u] 0x%lx\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""[%3u] 0x%lx\n"" (" """) (string_content "[%3u] 0x%lx") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "uVar20 = (int)uVar25 + 1;" (assignment_expression "uVar20 = (int)uVar25 + 1" (identifier "uVar20") (= "=") (binary_expression "(int)uVar25 + 1" (cast_expression "(int)uVar25" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar25")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "printf(pcVar11,uVar25,uVar12);" (call_expression "printf(pcVar11,uVar25,uVar12)" (identifier "printf") (argument_list "(pcVar11,uVar25,uVar12)" (( "(") (identifier "pcVar11") (, ",") (identifier "uVar25") (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "uVar21 = (ulong)uVar20;" (assignment_expression "uVar21 = (ulong)uVar20" (identifier "uVar21") (= "=") (cast_expression "(ulong)uVar20" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar20"))) (; ";")) (expression_statement "piVar30 = piVar24;" (assignment_expression "piVar30 = piVar24" (identifier "piVar30") (= "=") (identifier "piVar24")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(uVar20 != uVar7)" (( "(") (binary_expression "uVar20 != uVar7" (identifier "uVar20") (!= "!=") (identifier "uVar7")) () ")")) (; ";")) (expression_statement "piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));" (assignment_expression "piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1))" (identifier "piVar29") (= "=") (cast_expression "(int *)((long)piVar29 + uVar10 * (uVar25 + 1))" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)piVar29 + uVar10 * (uVar25 + 1))" (( "(") (binary_expression "(long)piVar29 + uVar10 * (uVar25 + 1)" (cast_expression "(long)piVar29" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar29")) (+ "+") (binary_expression "uVar10 * (uVar25 + 1)" (identifier "uVar10") (* "*") (parenthesized_expression "(uVar25 + 1)" (( "(") (binary_expression "uVar25 + 1" (identifier "uVar25") (+ "+") (number_literal "1")) () ")")))) () ")")))) (; ";")) (} "}"))) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" (identifier "putc") (argument_list "(10,stdout)" (( "(") (number_literal "10") (, ",") (identifier "stdout") () ")"))) (; ";")) (expression_statement "pcVar11 = (char *)dcgettext(0,"TU table:\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"TU table:\n",5)" (identifier "pcVar11") (= "=") (cast_expression "(char *)dcgettext(0,"TU table:\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"TU table:\n",5)" (identifier "dcgettext") (argument_list "(0,"TU table:\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""TU table:\n"" (" """) (string_content "TU table:") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" (identifier "printf") (argument_list "(pcVar11)" (( "(") (identifier "pcVar11") () ")"))) (; ";")) (if_statement "if (uVar8 != 0) {\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }" (if "if") (parenthesized_expression "(uVar8 != 0)" (( "(") (binary_expression "uVar8 != 0" (identifier "uVar8") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          uVar10 = (ulong)local_88;\n          uVar21 = 0;\n          piVar30 = piVar29;\n          while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }\n          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));\n        }" ({ "{") (expression_statement "uVar10 = (ulong)local_88;" (assignment_expression "uVar10 = (ulong)local_88" (identifier "uVar10") (= "=") (cast_expression "(ulong)local_88" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "local_88"))) (; ";")) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" (identifier "uVar21") (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" (identifier "piVar30") (= "=") (identifier "piVar29")) (; ";")) (while_statement "while( true ) {\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n            piVar24 = (int *)((long)piVar30 + uVar10);\n            uVar7 = local_88;\n            if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);\n            printf(pcVar11,uVar21,uVar12);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == uVar8) break;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar24;\n          }" ({ "{") (expression_statement "piVar24 = (int *)((long)piVar30 + uVar10);" (assignment_expression "piVar24 = (int *)((long)piVar30 + uVar10)" (identifier "piVar24") (= "=") (cast_expression "(int *)((long)piVar30 + uVar10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)piVar30 + uVar10)" (( "(") (binary_expression "(long)piVar30 + uVar10" (cast_expression "(long)piVar30" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar30")) (+ "+") (identifier "uVar10")) () ")")))) (; ";")) (expression_statement "uVar7 = local_88;" (assignment_expression "uVar7 = local_88" (identifier "uVar7") (= "=") (identifier "local_88")) (; ";")) (if_statement "if ((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }" (if "if") (parenthesized_expression "((piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8))))" (( "(") (binary_expression "(piVar24 < local_c8) ||\n               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))" (parenthesized_expression "(piVar24 < local_c8)" (( "(") (binary_expression "piVar24 < local_c8" (identifier "piVar24") (< "<") (identifier "local_c8")) () ")")) (|| "||") (parenthesized_expression "((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))" (( "(") (parenthesized_expression "(uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8))" (( "(") (comma_expression "uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)" (assignment_expression "uVar12 = 0" (identifier "uVar12") (= "=") (number_literal "0")) (, ",") (binary_expression "(int *)((long)piVar24 - uVar10) < local_c8 &&\n                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)" (binary_expression "(int *)((long)piVar24 - uVar10) < local_c8" (cast_expression "(int *)((long)piVar24 - uVar10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)piVar24 - uVar10)" (( "(") (binary_expression "(long)piVar24 - uVar10" (cast_expression "(long)piVar24" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar24")) (- "-") (identifier "uVar10")) () ")"))) (< "<") (identifier "local_c8")) (&& "&&") (parenthesized_expression "(uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)" (( "(") (comma_expression "uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8" (assignment_expression "uVar7 = iVar3 - (int)piVar30" (identifier "uVar7") (= "=") (binary_expression "iVar3 - (int)piVar30" (identifier "iVar3") (- "-") (cast_expression "(int)piVar30" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar30")))) (, ",") (binary_expression "uVar7 - 1 < 8" (binary_expression "uVar7 - 1" (identifier "uVar7") (- "-") (number_literal "1")) (< "<") (number_literal "8"))) () ")")))) () ")")) () ")"))) () ")")) (compound_statement "{\n              uVar12 = (*DAT_00159e20)(piVar30,uVar7);\n            }" ({ "{") (expression_statement "uVar12 = (*DAT_00159e20)(piVar30,uVar7);" (assignment_expression "uVar12 = (*DAT_00159e20)(piVar30,uVar7)" (identifier "uVar12") (= "=") (call_expression "(*DAT_00159e20)(piVar30,uVar7)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar30,uVar7)" (( "(") (identifier "piVar30") (, ",") (identifier "uVar7") () ")")))) (; ";")) (} "}"))) (expression_statement "pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5)" (identifier "pcVar11") (= "=") (cast_expression "(char *)dcgettext(0,"[%3u] 0x%lx\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"[%3u] 0x%lx\n",5)" (identifier "dcgettext") (argument_list "(0,"[%3u] 0x%lx\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""[%3u] 0x%lx\n"" (" """) (string_content "[%3u] 0x%lx") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar11,uVar21,uVar12);" (call_expression "printf(pcVar11,uVar21,uVar12)" (identifier "printf") (argument_list "(pcVar11,uVar21,uVar12)" (( "(") (identifier "pcVar11") (, ",") (identifier "uVar21") (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "uVar7 = (int)uVar21 + 1;" (assignment_expression "uVar7 = (int)uVar21 + 1" (identifier "uVar7") (= "=") (binary_expression "(int)uVar21 + 1" (cast_expression "(int)uVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar21")) (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (uVar7 == uVar8) break;" (if "if") (parenthesized_expression "(uVar7 == uVar8)" (( "(") (binary_expression "uVar7 == uVar8" (identifier "uVar7") (== "==") (identifier "uVar8")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "uVar21 = (ulong)uVar7;" (assignment_expression "uVar21 = (ulong)uVar7" (identifier "uVar21") (= "=") (cast_expression "(ulong)uVar7" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar7"))) (; ";")) (expression_statement "piVar30 = piVar24;" (assignment_expression "piVar30 = piVar24" (identifier "piVar30") (= "=") (identifier "piVar24")) (; ";")) (} "}"))) (expression_statement "piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));" (assignment_expression "piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1))" (identifier "piVar29") (= "=") (cast_expression "(int *)((long)piVar29 + uVar10 * (uVar21 + 1))" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)piVar29 + uVar10 * (uVar21 + 1))" (( "(") (binary_expression "(long)piVar29 + uVar10 * (uVar21 + 1)" (cast_expression "(long)piVar29" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar29")) (+ "+") (binary_expression "uVar10 * (uVar21 + 1)" (identifier "uVar10") (* "*") (parenthesized_expression "(uVar21 + 1)" (( "(") (binary_expression "uVar21 + 1" (identifier "uVar21") (+ "+") (number_literal "1")) () ")")))) () ")")))) (; ";")) (} "}"))) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" (identifier "putc") (argument_list "(10,stdout)" (( "(") (number_literal "10") (, ",") (identifier "stdout") () ")"))) (; ";")) (expression_statement "pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5)" (identifier "pcVar11") (= "=") (cast_expression "(char *)dcgettext(0,"Foreign TU table:\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"Foreign TU table:\n",5)" (identifier "dcgettext") (argument_list "(0,"Foreign TU table:\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Foreign TU table:\n"" (" """) (string_content "Foreign TU table:") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" (identifier "printf") (argument_list "(pcVar11)" (( "(") (identifier "pcVar11") () ")"))) (; ";")) (if_statement "if ((uint)local_98 != 0) {\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }" (if "if") (parenthesized_expression "((uint)local_98 != 0)" (( "(") (binary_expression "(uint)local_98 != 0" (cast_expression "(uint)local_98" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_98")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          uVar21 = 0;\n          piVar30 = piVar29;\n          do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );\n        }" ({ "{") (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" (identifier "uVar21") (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar30 = piVar29;" (assignment_expression "piVar30 = piVar29" (identifier "piVar30") (= "=") (identifier "piVar29")) (; ";")) (do_statement "do {\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          } while( true );" (do "do") (compound_statement "{\n            if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }\n            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);\n            printf(pcVar11,uVar21);\n            FUN_0010ee90(uVar12,8);\n            putc(10,stdout);\n            uVar7 = (int)uVar21 + 1;\n            if (uVar7 == (uint)local_98) goto LAB_00118eee;\n            uVar21 = (ulong)uVar7;\n            piVar30 = piVar30 + 2;\n          }" ({ "{") (if_statement "if (piVar30 + 2 < local_c8) {\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }\n            else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }" (if "if") (parenthesized_expression "(piVar30 + 2 < local_c8)" (( "(") (binary_expression "piVar30 + 2 < local_c8" (binary_expression "piVar30 + 2" (identifier "piVar30") (+ "+") (number_literal "2")) (< "<") (identifier "local_c8")) () ")")) (compound_statement "{\n              lVar22 = 8;\nLAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);\n            }" ({ "{") (expression_statement "lVar22 = 8;" (assignment_expression "lVar22 = 8" (identifier "lVar22") (= "=") (number_literal "8")) (; ";")) (labeled_statement "LAB_00118ee3:\n              uVar12 = (*DAT_00159e20)(piVar30,lVar22);" (statement_identifier "LAB_00118ee3") (: ":") (expression_statement "uVar12 = (*DAT_00159e20)(piVar30,lVar22);" (assignment_expression "uVar12 = (*DAT_00159e20)(piVar30,lVar22)" (identifier "uVar12") (= "=") (call_expression "(*DAT_00159e20)(piVar30,lVar22)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar30,lVar22)" (( "(") (identifier "piVar30") (, ",") (identifier "lVar22") () ")")))) (; ";"))) (} "}")) (else_clause "else {\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }" (else "else") (compound_statement "{\n              uVar12 = 0;\n              if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;\n            }" ({ "{") (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" (identifier "uVar12") (= "=") (number_literal "0")) (; ";")) (if_statement "if ((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;" (if "if") (parenthesized_expression "((piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8))" (( "(") (binary_expression "(piVar30 < local_c8) &&\n                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)" (parenthesized_expression "(piVar30 < local_c8)" (( "(") (binary_expression "piVar30 < local_c8" (identifier "piVar30") (< "<") (identifier "local_c8")) () ")")) (&& "&&") (parenthesized_expression "(lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)" (( "(") (comma_expression "lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8" (assignment_expression "lVar22 = (long)local_c8 - (long)piVar30" (identifier "lVar22") (= "=") (binary_expression "(long)local_c8 - (long)piVar30" (cast_expression "(long)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_c8")) (- "-") (cast_expression "(long)piVar30" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar30")))) (, ",") (binary_expression "(int)lVar22 - 1U < 8" (binary_expression "(int)lVar22 - 1U" (cast_expression "(int)lVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "lVar22")) (- "-") (number_literal "1U")) (< "<") (number_literal "8"))) () ")"))) () ")")) (goto_statement "goto LAB_00118ee3;" (goto "goto") (statement_identifier "LAB_00118ee3") (; ";"))) (} "}")))) (expression_statement "pcVar11 = (char *)dcgettext(0,"[%3u] ",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"[%3u] ",5)" (identifier "pcVar11") (= "=") (cast_expression "(char *)dcgettext(0,"[%3u] ",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"[%3u] ",5)" (identifier "dcgettext") (argument_list "(0,"[%3u] ",5)" (( "(") (number_literal "0") (, ",") (string_literal ""[%3u] "" (" """) (string_content "[%3u] ") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar11,uVar21);" (call_expression "printf(pcVar11,uVar21)" (identifier "printf") (argument_list "(pcVar11,uVar21)" (( "(") (identifier "pcVar11") (, ",") (identifier "uVar21") () ")"))) (; ";")) (expression_statement "FUN_0010ee90(uVar12,8);" (call_expression "FUN_0010ee90(uVar12,8)" (identifier "FUN_0010ee90") (argument_list "(uVar12,8)" (( "(") (identifier "uVar12") (, ",") (number_literal "8") () ")"))) (; ";")) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" (identifier "putc") (argument_list "(10,stdout)" (( "(") (number_literal "10") (, ",") (identifier "stdout") () ")"))) (; ";")) (expression_statement "uVar7 = (int)uVar21 + 1;" (assignment_expression "uVar7 = (int)uVar21 + 1" (identifier "uVar7") (= "=") (binary_expression "(int)uVar21 + 1" (cast_expression "(int)uVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar21")) (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (uVar7 == (uint)local_98) goto LAB_00118eee;" (if "if") (parenthesized_expression "(uVar7 == (uint)local_98)" (( "(") (binary_expression "uVar7 == (uint)local_98" (identifier "uVar7") (== "==") (cast_expression "(uint)local_98" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_98"))) () ")")) (goto_statement "goto LAB_00118eee;" (goto "goto") (statement_identifier "LAB_00118eee") (; ";"))) (expression_statement "uVar21 = (ulong)uVar7;" (assignment_expression "uVar21 = (ulong)uVar7" (identifier "uVar21") (= "=") (cast_expression "(ulong)uVar7" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar7"))) (; ";")) (expression_statement "piVar30 = piVar30 + 2;" (assignment_expression "piVar30 = piVar30 + 2" (identifier "piVar30") (= "=") (binary_expression "piVar30 + 2" (identifier "piVar30") (+ "+") (number_literal "2"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (goto_statement "goto LAB_00118ef8;" (goto "goto") (statement_identifier "LAB_00118ef8") (; ";")) (} "}"))) (if_statement "if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }" (if "if") (parenthesized_expression "((piVar30 < local_c8) && ((int)uVar21 - 1U < 8))" (( "(") (binary_expression "(piVar30 < local_c8) && ((int)uVar21 - 1U < 8)" (parenthesized_expression "(piVar30 < local_c8)" (( "(") (binary_expression "piVar30 < local_c8" (identifier "piVar30") (< "<") (identifier "local_c8")) () ")")) (&& "&&") (parenthesized_expression "((int)uVar21 - 1U < 8)" (( "(") (binary_expression "(int)uVar21 - 1U < 8" (binary_expression "(int)uVar21 - 1U" (cast_expression "(int)uVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar21")) (- "-") (number_literal "1U")) (< "<") (number_literal "8")) () ")"))) () ")")) (compound_statement "{\n        uVar10 = uVar21 & 0xffffffff;\n        goto LAB_00118af5;\n      }" ({ "{") (expression_statement "uVar10 = uVar21 & 0xffffffff;" (assignment_expression "uVar10 = uVar21 & 0xffffffff" (identifier "uVar10") (= "=") (binary_expression "uVar21 & 0xffffffff" (identifier "uVar21") (& "&") (number_literal "0xffffffff"))) (; ";")) (goto_statement "goto LAB_00118af5;" (goto "goto") (statement_identifier "LAB_00118af5") (; ";")) (} "}"))) (expression_statement "pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Version %ld\n",5)" (identifier "pcVar11") (= "=") (cast_expression "(char *)dcgettext(0,"Version %ld\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"Version %ld\n",5)" (identifier "dcgettext") (argument_list "(0,"Version %ld\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Version %ld\n"" (" """) (string_content "Version %ld") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar11,0);" (call_expression "printf(pcVar11,0)" (identifier "printf") (argument_list "(pcVar11,0)" (( "(") (identifier "pcVar11") (, ",") (number_literal "0") () ")"))) (; ";")) (labeled_statement "LAB_00118a22:\n      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);" (statement_identifier "LAB_00118a22") (: ":") (expression_statement "uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5)" (identifier "dcgettext") (argument_list "(0,"Only DWARF version 5 .debug_names is currently supported.\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Only DWARF version 5 .debug_names is currently supported.\n"" (" """) (string_content "Only DWARF version 5 .debug_names is currently supported.") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";"))) (expression_statement "warn(uVar12);" (call_expression "warn(uVar12)" (identifier "warn") (argument_list "(uVar12)" (( "(") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" (identifier "uVar12") (= "=") (number_literal "0")) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n    uVar12 = 1;\n  }" (else "else") (compound_statement "{\n    uVar12 = 1;\n  }" ({ "{") (expression_statement "uVar12 = 1;" (assignment_expression "uVar12 = 1" (identifier "uVar12") (= "=") (number_literal "1")) (; ";")) (} "}"))))) (return_statement "return uVar12;" (return "return") (identifier "uVar12") (; ";")) (labeled_statement "LAB_00118eee:\n  piVar29 = piVar29 + uVar21 * 2 + 2;" (statement_identifier "LAB_00118eee") (: ":") (expression_statement "piVar29 = piVar29 + uVar21 * 2 + 2;" (assignment_expression "piVar29 = piVar29 + uVar21 * 2 + 2" (identifier "piVar29") (= "=") (binary_expression "piVar29 + uVar21 * 2 + 2" (binary_expression "piVar29 + uVar21 * 2" (identifier "piVar29") (+ "+") (binary_expression "uVar21 * 2" (identifier "uVar21") (* "*") (number_literal "2"))) (+ "+") (number_literal "2"))) (; ";"))) (labeled_statement "LAB_00118ef8:\n  putc(10,stdout);" (statement_identifier "LAB_00118ef8") (: ":") (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" (identifier "putc") (argument_list "(10,stdout)" (( "(") (number_literal "10") (, ",") (identifier "stdout") () ")"))) (; ";"))) (expression_statement "puVar18 = (uint *)(local_90 + (long)piVar29);" (assignment_expression "puVar18 = (uint *)(local_90 + (long)piVar29)" (identifier "puVar18") (= "=") (cast_expression "(uint *)(local_90 + (long)piVar29)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_90 + (long)piVar29)" (( "(") (binary_expression "local_90 + (long)piVar29" (identifier "local_90") (+ "+") (cast_expression "(long)piVar29" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar29"))) () ")")))) (; ";")) (expression_statement "lVar22 = local_b0 + local_a8;" (assignment_expression "lVar22 = local_b0 + local_a8" (identifier "lVar22") (= "=") (binary_expression "local_b0 + local_a8" (identifier "local_b0") (+ "+") (identifier "local_a8"))) (; ";")) (expression_statement "lVar27 = (long)puVar18 + local_b0 + lVar22;" (assignment_expression "lVar27 = (long)puVar18 + local_b0 + lVar22" (identifier "lVar27") (= "=") (binary_expression "(long)puVar18 + local_b0 + lVar22" (binary_expression "(long)puVar18 + local_b0" (cast_expression "(long)puVar18" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar18")) (+ "+") (identifier "local_b0")) (+ "+") (identifier "lVar22"))) (; ";")) (expression_statement "piVar30 = (int *)(local_c0 + lVar27);" (assignment_expression "piVar30 = (int *)(local_c0 + lVar27)" (identifier "piVar30") (= "=") (cast_expression "(int *)(local_c0 + lVar27)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_c0 + lVar27)" (( "(") (binary_expression "local_c0 + lVar27" (identifier "local_c0") (+ "+") (identifier "lVar27")) () ")")))) (; ";")) (if_statement "if (local_c8 < piVar30) {\n    lVar22 = *(long *)(param_1 + 0x20);\n    uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);\n    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);\n    return 0;\n  }" (if "if") (parenthesized_expression "(local_c8 < piVar30)" (( "(") (binary_expression "local_c8 < piVar30" (identifier "local_c8") (< "<") (identifier "piVar30")) () ")")) (compound_statement "{\n    lVar22 = *(long *)(param_1 + 0x20);\n    uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);\n    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);\n    return 0;\n  }" ({ "{") (expression_statement "lVar22 = *(long *)(param_1 + 0x20);" (assignment_expression "lVar22 = *(long *)(param_1 + 0x20)" (identifier "lVar22") (= "=") (pointer_expression "*(long *)(param_1 + 0x20)" (* "*") (cast_expression "(long *)(param_1 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (expression_statement "uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5)" (identifier "dcgettext") (argument_list "(0,\n                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"\n                       ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"" (" """) (string_content "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);" (call_expression "warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22)" (identifier "warn") (argument_list "(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22)" (( "(") (identifier "uVar12") (, ",") (binary_expression "(long)piVar30 - lVar22" (cast_expression "(long)piVar30" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar30")) (- "-") (identifier "lVar22")) (, ",") (binary_expression "(long)local_c8 - lVar22" (cast_expression "(long)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_c8")) (- "-") (identifier "lVar22")) (, ",") (binary_expression "(long)piVar2 - lVar22" (cast_expression "(long)piVar2" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar2")) (- "-") (identifier "lVar22")) () ")"))) (; ";")) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" (identifier "uVar21") (= "=") (number_literal "0")) (; ";")) (if_statement "if (local_b8 != 0) {\n    uVar21 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }" (if "if") (parenthesized_expression "(local_b8 != 0)" (( "(") (binary_expression "local_b8 != 0" (identifier "local_b8") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    uVar21 = 0;\n    piVar24 = piVar29 + local_b8;\n    do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);\n  }" ({ "{") (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" (identifier "uVar21") (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar24 = piVar29 + local_b8;" (assignment_expression "piVar24 = piVar29 + local_b8" (identifier "piVar24") (= "=") (binary_expression "piVar29 + local_b8" (identifier "piVar29") (+ "+") (identifier "local_b8"))) (; ";")) (do_statement "do {\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    } while (piVar24 != piVar29);" (do "do") (compound_statement "{\n      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);\n      piVar29 = piVar29 + 1;\n    }" ({ "{") (expression_statement "uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);" (assignment_expression "uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0)" (identifier "uVar21") (= "=") (binary_expression "(uVar21 + 1) - (ulong)(*piVar29 == 0)" (parenthesized_expression "(uVar21 + 1)" (( "(") (binary_expression "uVar21 + 1" (identifier "uVar21") (+ "+") (number_literal "1")) () ")")) (- "-") (call_expression "(ulong)(*piVar29 == 0)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(*piVar29 == 0)" (( "(") (binary_expression "*piVar29 == 0" (pointer_expression "*piVar29" (* "*") (identifier "piVar29")) (== "==") (number_literal "0")) () ")"))))) (; ";")) (expression_statement "piVar29 = piVar29 + 1;" (assignment_expression "piVar29 = piVar29 + 1" (identifier "piVar29") (= "=") (binary_expression "piVar29 + 1" (identifier "piVar29") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(piVar24 != piVar29)" (( "(") (binary_expression "piVar24 != piVar29" (identifier "piVar24") (!= "!=") (identifier "piVar29")) () ")")) (; ";")) (} "}"))) (expression_statement "uVar10 = 0;" (assignment_expression "uVar10 = 0" (identifier "uVar10") (= "=") (number_literal "0")) (; ";")) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" (identifier "lVar26") (= "=") (number_literal "0")) (; ";")) (expression_statement "pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);" (assignment_expression "pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" (identifier "pcVar11") (= "=") (cast_expression "(char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" (identifier "dcngettext") (argument_list "(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8)" (( "(") (number_literal "0") (, ",") (string_literal ""Used %zu of %lu bucket.\n"" (" """) (string_content "Used %zu of %lu bucket.") (escape_sequence "\n") (" """)) (, ",") (string_literal ""Used %zu of %lu buckets.\n"" (" """) (string_content "Used %zu of %lu buckets.") (escape_sequence "\n") (" """)) (, ",") (identifier "local_b8") () ")"))))) (; ";")) (expression_statement "printf(pcVar11,uVar21,local_b8);" (call_expression "printf(pcVar11,uVar21,local_b8)" (identifier "printf") (argument_list "(pcVar11,uVar21,local_b8)" (( "(") (identifier "pcVar11") (, ",") (identifier "uVar21") (, ",") (identifier "local_b8") () ")"))) (; ";")) (if_statement "if (local_d0 != 0) {\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar10 = 0;\n    uVar7 = *puVar18;\n    puVar19 = puVar18;\n    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }\n    uVar21 = uVar21 + lVar26;\n  }" (if "if") (parenthesized_expression "(local_d0 != 0)" (( "(") (binary_expression "local_d0 != 0" (identifier "local_d0") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    uVar25 = 0;\n    lVar26 = 0;\n    uVar10 = 0;\n    uVar7 = *puVar18;\n    puVar19 = puVar18;\n    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }\n    uVar21 = uVar21 + lVar26;\n  }" ({ "{") (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" (identifier "uVar25") (= "=") (number_literal "0")) (; ";")) (expression_statement "lVar26 = 0;" (assignment_expression "lVar26 = 0" (identifier "lVar26") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar10 = 0;" (assignment_expression "uVar10 = 0" (identifier "uVar10") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar7 = *puVar18;" (assignment_expression "uVar7 = *puVar18" (identifier "uVar7") (= "=") (pointer_expression "*puVar18" (* "*") (identifier "puVar18"))) (; ";")) (expression_statement "puVar19 = puVar18;" (assignment_expression "puVar19 = puVar18" (identifier "puVar19") (= "=") (identifier "puVar18")) (; ";")) (while_statement "while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }" (while "while") (parenthesized_expression "(puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19)" (( "(") (comma_expression "puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19" (assignment_expression "puVar19 = puVar19 + 1" (identifier "puVar19") (= "=") (binary_expression "puVar19 + 1" (identifier "puVar19") (+ "+") (number_literal "1"))) (, ",") (binary_expression "puVar18 + local_d0 != puVar19" (binary_expression "puVar18 + local_d0" (identifier "puVar18") (+ "+") (identifier "local_d0")) (!= "!=") (identifier "puVar19"))) () ")")) (compound_statement "{\n      uVar8 = *puVar19;\n      if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }\n    }" ({ "{") (expression_statement "uVar8 = *puVar19;" (assignment_expression "uVar8 = *puVar19" (identifier "uVar8") (= "=") (pointer_expression "*puVar19" (* "*") (identifier "puVar19"))) (; ";")) (if_statement "if (uVar7 % local_84 == uVar8 % local_84) {\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }\n      else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }" (if "if") (parenthesized_expression "(uVar7 % local_84 == uVar8 % local_84)" (( "(") (binary_expression "uVar7 % local_84 == uVar8 % local_84" (binary_expression "uVar7 % local_84" (identifier "uVar7") (% "%") (identifier "local_84")) (== "==") (binary_expression "uVar8 % local_84" (identifier "uVar8") (% "%") (identifier "local_84"))) () ")")) (compound_statement "{\n        uVar25 = uVar25 + 1;\n        lVar26 = lVar26 + 1;\n        uVar7 = uVar8;\n        if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }\n      }" ({ "{") (expression_statement "uVar25 = uVar25 + 1;" (assignment_expression "uVar25 = uVar25 + 1" (identifier "uVar25") (= "=") (binary_expression "uVar25 + 1" (identifier "uVar25") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "lVar26 = lVar26 + 1;" (assignment_expression "lVar26 = lVar26 + 1" (identifier "lVar26") (= "=") (binary_expression "lVar26 + 1" (identifier "lVar26") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar7 = uVar8;" (assignment_expression "uVar7 = uVar8" (identifier "uVar7") (= "=") (identifier "uVar8")) (; ";")) (if_statement "if (uVar10 < uVar25) {\n          uVar10 = uVar25;\n        }" (if "if") (parenthesized_expression "(uVar10 < uVar25)" (( "(") (binary_expression "uVar10 < uVar25" (identifier "uVar10") (< "<") (identifier "uVar25")) () ")")) (compound_statement "{\n          uVar10 = uVar25;\n        }" ({ "{") (expression_statement "uVar10 = uVar25;" (assignment_expression "uVar10 = uVar25" (identifier "uVar10") (= "=") (identifier "uVar25")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }" (else "else") (compound_statement "{\n        uVar25 = 0;\n        uVar7 = uVar8;\n      }" ({ "{") (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" (identifier "uVar25") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar7 = uVar8;" (assignment_expression "uVar7 = uVar8" (identifier "uVar7") (= "=") (identifier "uVar8")) (; ";")) (} "}")))) (} "}"))) (expression_statement "uVar21 = uVar21 + lVar26;" (assignment_expression "uVar21 = uVar21 + lVar26" (identifier "uVar21") (= "=") (binary_expression "uVar21 + lVar26" (identifier "uVar21") (+ "+") (identifier "lVar26"))) (; ";")) (} "}"))) (expression_statement "pcVar11 = (char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5)" (identifier "pcVar11") (= "=") (cast_expression "(char *)dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5)" (identifier "dcgettext") (argument_list "(0,\n                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"\n                              ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"" (" """) (string_content "Out of %lu items there are %zu bucket clashes (longest of %zu entries).") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar11,local_d0,lVar26,uVar10);" (call_expression "printf(pcVar11,local_d0,lVar26,uVar10)" (identifier "printf") (argument_list "(pcVar11,local_d0,lVar26,uVar10)" (( "(") (identifier "pcVar11") (, ",") (identifier "local_d0") (, ",") (identifier "lVar26") (, ",") (identifier "uVar10") () ")"))) (; ";")) (if_statement "if (local_d0 != uVar21) {\n                    \n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }" (if "if") (parenthesized_expression "(local_d0 != uVar21)" (( "(") (binary_expression "local_d0 != uVar21" (identifier "local_d0") (!= "!=") (identifier "uVar21")) () ")")) (compound_statement "{\n                    \n    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");\n  }" ({ "{") (expression_statement "__assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names");" (call_expression "__assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names")" (identifier "__assert_fail") (argument_list "("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,\n                  "display_debug_names")" (( "(") (string_literal ""name_count == buckets_filled + hash_clash_count"" (" """) (string_content "name_count == buckets_filled + hash_clash_count") (" """)) (, ",") (string_literal ""../../binutils/dwarf.c"" (" """) (string_content "../../binutils/dwarf.c") (" """)) (, ",") (number_literal "0x216a") (, ",") (string_literal ""display_debug_names"" (" """) (string_content "display_debug_names") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "local_d0 = 0;" (assignment_expression "local_d0 = 0" (identifier "local_d0") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" (identifier "uVar21") (= "=") (number_literal "0")) (; ";")) (expression_statement "__ptr = (long *)0x0;" (assignment_expression "__ptr = (long *)0x0" (identifier "__ptr") (= "=") (cast_expression "(long *)0x0" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (while_statement "while( true ) {\n    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    if (lVar26 == 0) break;\n    if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar21) {\n                    \n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    plVar17 = __ptr + uVar21 * 2;\n    if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }\nLAB_001190c6:\n    plVar17[1] = lVar27;\n    *plVar17 = lVar26;\n    uVar21 = uVar21 + 1;\n    FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);\n  }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    if (lVar26 == 0) break;\n    if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }\n    if (local_d0 <= uVar21) {\n                    \n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }\n    plVar17 = __ptr + uVar21 * 2;\n    if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }\nLAB_001190c6:\n    plVar17[1] = lVar27;\n    *plVar17 = lVar26;\n    uVar21 = uVar21 + 1;\n    FUN_001114f0(lVar27,local_3c,0,piVar30);\n    lVar27 = lVar27 + (ulong)local_3c[0];\n    do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);\n  }" ({ "{") (expression_statement "lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);" (assignment_expression "lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30)" (identifier "lVar26") (= "=") (call_expression "FUN_001114f0(lVar27,local_3c,0,piVar30)" (identifier "FUN_001114f0") (argument_list "(lVar27,local_3c,0,piVar30)" (( "(") (identifier "lVar27") (, ",") (identifier "local_3c") (, ",") (number_literal "0") (, ",") (identifier "piVar30") () ")")))) (; ";")) (expression_statement "lVar27 = lVar27 + (ulong)local_3c[0];" (assignment_expression "lVar27 = lVar27 + (ulong)local_3c[0]" (identifier "lVar27") (= "=") (binary_expression "lVar27 + (ulong)local_3c[0]" (identifier "lVar27") (+ "+") (cast_expression "(ulong)local_3c[0]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "local_3c[0]" (identifier "local_3c") ([ "[") (number_literal "0") (] "]"))))) (; ";")) (if_statement "if (lVar26 == 0) break;" (if "if") (parenthesized_expression "(lVar26 == 0)" (( "(") (binary_expression "lVar26 == 0" (identifier "lVar26") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (if_statement "if (uVar21 == local_d0) {\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }" (if "if") (parenthesized_expression "(uVar21 == local_d0)" (( "(") (binary_expression "uVar21 == local_d0" (identifier "uVar21") (== "==") (identifier "local_d0")) () ")")) (compound_statement "{\n      local_d0 = uVar21 * 2;\n      if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }\n      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);\n    }" ({ "{") (expression_statement "local_d0 = uVar21 * 2;" (assignment_expression "local_d0 = uVar21 * 2" (identifier "local_d0") (= "=") (binary_expression "uVar21 * 2" (identifier "uVar21") (* "*") (number_literal "2"))) (; ";")) (if_statement "if (local_d0 < 0x100) {\n        local_d0 = 0x100;\n      }" (if "if") (parenthesized_expression "(local_d0 < 0x100)" (( "(") (binary_expression "local_d0 < 0x100" (identifier "local_d0") (< "<") (number_literal "0x100")) () ")")) (compound_statement "{\n        local_d0 = 0x100;\n      }" ({ "{") (expression_statement "local_d0 = 0x100;" (assignment_expression "local_d0 = 0x100" (identifier "local_d0") (= "=") (number_literal "0x100")) (; ";")) (} "}"))) (expression_statement "__ptr = (long *)xrealloc(__ptr,local_d0 << 4);" (assignment_expression "__ptr = (long *)xrealloc(__ptr,local_d0 << 4)" (identifier "__ptr") (= "=") (cast_expression "(long *)xrealloc(__ptr,local_d0 << 4)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xrealloc(__ptr,local_d0 << 4)" (identifier "xrealloc") (argument_list "(__ptr,local_d0 << 4)" (( "(") (identifier "__ptr") (, ",") (binary_expression "local_d0 << 4" (identifier "local_d0") (<< "<<") (number_literal "4")) () ")"))))) (; ";")) (} "}"))) (if_statement "if (local_d0 <= uVar21) {\n                    \n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }" (if "if") (parenthesized_expression "(local_d0 <= uVar21)" (( "(") (binary_expression "local_d0 <= uVar21" (identifier "local_d0") (<= "<=") (identifier "uVar21")) () ")")) (compound_statement "{\n                    \n      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");\n    }" ({ "{") (expression_statement "__assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names");" (call_expression "__assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names")" (identifier "__assert_fail") (argument_list "("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,\n                    "display_debug_names")" (( "(") (string_literal ""abbrev_lookup_used < abbrev_lookup_allocated"" (" """) (string_content "abbrev_lookup_used < abbrev_lookup_allocated") (" """)) (, ",") (string_literal ""../../binutils/dwarf.c"" (" """) (string_content "../../binutils/dwarf.c") (" """)) (, ",") (number_literal "0x2186") (, ",") (string_literal ""display_debug_names"" (" """) (string_content "display_debug_names") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "plVar17 = __ptr + uVar21 * 2;" (assignment_expression "plVar17 = __ptr + uVar21 * 2" (identifier "plVar17") (= "=") (binary_expression "__ptr + uVar21 * 2" (identifier "__ptr") (+ "+") (binary_expression "uVar21 * 2" (identifier "uVar21") (* "*") (number_literal "2")))) (; ";")) (if_statement "if (__ptr < plVar17) {\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }" (if "if") (parenthesized_expression "(__ptr < plVar17)" (( "(") (binary_expression "__ptr < plVar17" (identifier "__ptr") (< "<") (identifier "plVar17")) () ")")) (compound_statement "{\n      lVar16 = *__ptr;\n      plVar15 = __ptr;\n      while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }\n      lVar16 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar26,(long)piVar2 - lVar16);\n    }" ({ "{") (expression_statement "lVar16 = *__ptr;" (assignment_expression "lVar16 = *__ptr" (identifier "lVar16") (= "=") (pointer_expression "*__ptr" (* "*") (identifier "__ptr"))) (; ";")) (expression_statement "plVar15 = __ptr;" (assignment_expression "plVar15 = __ptr" (identifier "plVar15") (= "=") (identifier "__ptr")) (; ";")) (while_statement "while (lVar26 != lVar16) {\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }" (while "while") (parenthesized_expression "(lVar26 != lVar16)" (( "(") (binary_expression "lVar26 != lVar16" (identifier "lVar26") (!= "!=") (identifier "lVar16")) () ")")) (compound_statement "{\n        plVar15 = plVar15 + 2;\n        if (plVar17 <= plVar15) goto LAB_001190c6;\n        lVar16 = *plVar15;\n      }" ({ "{") (expression_statement "plVar15 = plVar15 + 2;" (assignment_expression "plVar15 = plVar15 + 2" (identifier "plVar15") (= "=") (binary_expression "plVar15 + 2" (identifier "plVar15") (+ "+") (number_literal "2"))) (; ";")) (if_statement "if (plVar17 <= plVar15) goto LAB_001190c6;" (if "if") (parenthesized_expression "(plVar17 <= plVar15)" (( "(") (binary_expression "plVar17 <= plVar15" (identifier "plVar17") (<= "<=") (identifier "plVar15")) () ")")) (goto_statement "goto LAB_001190c6;" (goto "goto") (statement_identifier "LAB_001190c6") (; ";"))) (expression_statement "lVar16 = *plVar15;" (assignment_expression "lVar16 = *plVar15" (identifier "lVar16") (= "=") (pointer_expression "*plVar15" (* "*") (identifier "plVar15"))) (; ";")) (} "}"))) (expression_statement "lVar16 = *(long *)(param_1 + 0x20);" (assignment_expression "lVar16 = *(long *)(param_1 + 0x20)" (identifier "lVar16") (= "=") (pointer_expression "*(long *)(param_1 + 0x20)" (* "*") (cast_expression "(long *)(param_1 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (expression_statement "uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" (identifier "dcgettext") (argument_list "(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"" (" """) (string_content "Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar12,lVar26,(long)piVar2 - lVar16);" (call_expression "warn(uVar12,lVar26,(long)piVar2 - lVar16)" (identifier "warn") (argument_list "(uVar12,lVar26,(long)piVar2 - lVar16)" (( "(") (identifier "uVar12") (, ",") (identifier "lVar26") (, ",") (binary_expression "(long)piVar2 - lVar16" (cast_expression "(long)piVar2" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar2")) (- "-") (identifier "lVar16")) () ")"))) (; ";")) (} "}"))) (labeled_statement "LAB_001190c6:\n    plVar17[1] = lVar27;" (statement_identifier "LAB_001190c6") (: ":") (expression_statement "plVar17[1] = lVar27;" (assignment_expression "plVar17[1] = lVar27" (subscript_expression "plVar17[1]" (identifier "plVar17") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "lVar27")) (; ";"))) (expression_statement "*plVar17 = lVar26;" (assignment_expression "*plVar17 = lVar26" (pointer_expression "*plVar17" (* "*") (identifier "plVar17")) (= "=") (identifier "lVar26")) (; ";")) (expression_statement "uVar21 = uVar21 + 1;" (assignment_expression "uVar21 = uVar21 + 1" (identifier "uVar21") (= "=") (binary_expression "uVar21 + 1" (identifier "uVar21") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "FUN_001114f0(lVar27,local_3c,0,piVar30);" (call_expression "FUN_001114f0(lVar27,local_3c,0,piVar30)" (identifier "FUN_001114f0") (argument_list "(lVar27,local_3c,0,piVar30)" (( "(") (identifier "lVar27") (, ",") (identifier "local_3c") (, ",") (number_literal "0") (, ",") (identifier "piVar30") () ")"))) (; ";")) (expression_statement "lVar27 = lVar27 + (ulong)local_3c[0];" (assignment_expression "lVar27 = lVar27 + (ulong)local_3c[0]" (identifier "lVar27") (= "=") (binary_expression "lVar27 + (ulong)local_3c[0]" (identifier "lVar27") (+ "+") (cast_expression "(ulong)local_3c[0]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "local_3c[0]" (identifier "local_3c") ([ "[") (number_literal "0") (] "]"))))) (; ";")) (do_statement "do {\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    } while (lVar16 != 0 || lVar26 != 0);" (do "do") (compound_statement "{\n      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n      uVar10 = (ulong)local_3c[0];\n      lVar16 = FUN_001114f0(lVar27 + uVar10);\n      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];\n    }" ({ "{") (expression_statement "lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);" (assignment_expression "lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30)" (identifier "lVar26") (= "=") (call_expression "FUN_001114f0(lVar27,local_3c,0,piVar30)" (identifier "FUN_001114f0") (argument_list "(lVar27,local_3c,0,piVar30)" (( "(") (identifier "lVar27") (, ",") (identifier "local_3c") (, ",") (number_literal "0") (, ",") (identifier "piVar30") () ")")))) (; ";")) (expression_statement "uVar10 = (ulong)local_3c[0];" (assignment_expression "uVar10 = (ulong)local_3c[0]" (identifier "uVar10") (= "=") (cast_expression "(ulong)local_3c[0]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "local_3c[0]" (identifier "local_3c") ([ "[") (number_literal "0") (] "]")))) (; ";")) (expression_statement "lVar16 = FUN_001114f0(lVar27 + uVar10);" (assignment_expression "lVar16 = FUN_001114f0(lVar27 + uVar10)" (identifier "lVar16") (= "=") (call_expression "FUN_001114f0(lVar27 + uVar10)" (identifier "FUN_001114f0") (argument_list "(lVar27 + uVar10)" (( "(") (binary_expression "lVar27 + uVar10" (identifier "lVar27") (+ "+") (identifier "uVar10")) () ")")))) (; ";")) (expression_statement "lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];" (assignment_expression "lVar27 = lVar27 + uVar10 + (ulong)local_3c[0]" (identifier "lVar27") (= "=") (binary_expression "lVar27 + uVar10 + (ulong)local_3c[0]" (binary_expression "lVar27 + uVar10" (identifier "lVar27") (+ "+") (identifier "uVar10")) (+ "+") (cast_expression "(ulong)local_3c[0]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "local_3c[0]" (identifier "local_3c") ([ "[") (number_literal "0") (] "]"))))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(lVar16 != 0 || lVar26 != 0)" (( "(") (binary_expression "lVar16 != 0 || lVar26 != 0" (binary_expression "lVar16 != 0" (identifier "lVar16") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "lVar26 != 0" (identifier "lVar26") (!= "!=") (number_literal "0"))) () ")")) (; ";")) (} "}"))) (expression_statement "pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5)" (identifier "pcVar11") (= "=") (cast_expression "(char *)dcgettext(0,"\nSymbol table:\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"\nSymbol table:\n",5)" (identifier "dcgettext") (argument_list "(0,"\nSymbol table:\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""\nSymbol table:\n"" (" """) (escape_sequence "\n") (string_content "Symbol table:") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" (identifier "printf") (argument_list "(pcVar11)" (( "(") (identifier "pcVar11") () ")"))) (; ";")) (if_statement "if ((uint)local_a0 != 0) {\n    local_90 = 0;\n    local_84 = 0;\n    uVar7 = (uint)local_a0 - 1;\n    do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }" (if "if") (parenthesized_expression "((uint)local_a0 != 0)" (( "(") (binary_expression "(uint)local_a0 != 0" (cast_expression "(uint)local_a0" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_a0")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    local_90 = 0;\n    local_84 = 0;\n    uVar7 = (uint)local_a0 - 1;\n    do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);\n  }" ({ "{") (expression_statement "local_90 = 0;" (assignment_expression "local_90 = 0" (identifier "local_90") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_84 = 0;" (assignment_expression "local_84 = 0" (identifier "local_84") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar7 = (uint)local_a0 - 1;" (assignment_expression "uVar7 = (uint)local_a0 - 1" (identifier "uVar7") (= "=") (binary_expression "(uint)local_a0 - 1" (cast_expression "(uint)local_a0" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_a0")) (- "-") (number_literal "1"))) (; ";")) (do_statement "do {\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    } while (bVar31);" (do "do") (compound_statement "{\n      uVar10 = (ulong)local_84;\n      lVar27 = uVar10 + local_88;\n      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }\n      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);\n      uVar8 = local_88;\n      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }\n      uVar12 = FUN_00110250(uVar12);\n      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);\n      uVar8 = 0xfffffffe;\n      local_a0 = -1;\n      piVar29 = local_98;\n      while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }\nLAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);\n      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);\n      warn(uVar12,lVar27,(long)piVar2 - lVar26);\nLAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }\n      putc(10,stdout);\n      local_84 = local_84 + local_88;\n      bVar31 = local_90 != uVar7;\n      local_90 = local_90 + 1;\n    }" ({ "{") (expression_statement "uVar10 = (ulong)local_84;" (assignment_expression "uVar10 = (ulong)local_84" (identifier "uVar10") (= "=") (cast_expression "(ulong)local_84" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "local_84"))) (; ";")) (expression_statement "lVar27 = uVar10 + local_88;" (assignment_expression "lVar27 = uVar10 + local_88" (identifier "lVar27") (= "=") (binary_expression "uVar10 + local_88" (identifier "uVar10") (+ "+") (identifier "local_88"))) (; ";")) (expression_statement "piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);" (assignment_expression "piVar29 = (int *)((long)puVar18 + uVar10 + local_a8)" (identifier "piVar29") (= "=") (cast_expression "(int *)((long)puVar18 + uVar10 + local_a8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar18 + uVar10 + local_a8)" (( "(") (binary_expression "(long)puVar18 + uVar10 + local_a8" (binary_expression "(long)puVar18 + uVar10" (cast_expression "(long)puVar18" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar18")) (+ "+") (identifier "uVar10")) (+ "+") (identifier "local_a8")) () ")")))) (; ";")) (expression_statement "uVar8 = local_88;" (assignment_expression "uVar8 = local_88" (identifier "uVar8") (= "=") (identifier "local_88")) (; ";")) (if_statement "if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }" (if "if") (parenthesized_expression "(((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8))))" (( "(") (binary_expression "((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||\n         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))" (parenthesized_expression "((int *)((long)puVar18 + lVar27 + local_a8) < local_c8)" (( "(") (binary_expression "(int *)((long)puVar18 + lVar27 + local_a8) < local_c8" (cast_expression "(int *)((long)puVar18 + lVar27 + local_a8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar18 + lVar27 + local_a8)" (( "(") (binary_expression "(long)puVar18 + lVar27 + local_a8" (binary_expression "(long)puVar18 + lVar27" (cast_expression "(long)puVar18" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar18")) (+ "+") (identifier "lVar27")) (+ "+") (identifier "local_a8")) () ")"))) (< "<") (identifier "local_c8")) () ")")) (|| "||") (parenthesized_expression "((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))" (( "(") (parenthesized_expression "(uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8))" (( "(") (comma_expression "uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" (assignment_expression "uVar12 = 0" (identifier "uVar12") (= "=") (number_literal "0")) (, ",") (binary_expression "piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" (binary_expression "piVar29 < local_c8" (identifier "piVar29") (< "<") (identifier "local_c8")) (&& "&&") (parenthesized_expression "(uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" (( "(") (comma_expression "uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8" (assignment_expression "uVar8 = iVar3 - (int)piVar29" (identifier "uVar8") (= "=") (binary_expression "iVar3 - (int)piVar29" (identifier "iVar3") (- "-") (cast_expression "(int)piVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar29")))) (, ",") (binary_expression "uVar8 - 1 < 8" (binary_expression "uVar8 - 1" (identifier "uVar8") (- "-") (number_literal "1")) (< "<") (number_literal "8"))) () ")")))) () ")")) () ")"))) () ")")) (compound_statement "{\n        uVar12 = (*DAT_00159e20)(piVar29,uVar8);\n      }" ({ "{") (expression_statement "uVar12 = (*DAT_00159e20)(piVar29,uVar8);" (assignment_expression "uVar12 = (*DAT_00159e20)(piVar29,uVar8)" (identifier "uVar12") (= "=") (call_expression "(*DAT_00159e20)(piVar29,uVar8)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar29,uVar8)" (( "(") (identifier "piVar29") (, ",") (identifier "uVar8") () ")")))) (; ";")) (} "}"))) (expression_statement "piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);" (assignment_expression "piVar29 = (int *)((long)puVar18 + uVar10 + lVar22)" (identifier "piVar29") (= "=") (cast_expression "(int *)((long)puVar18 + uVar10 + lVar22)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar18 + uVar10 + lVar22)" (( "(") (binary_expression "(long)puVar18 + uVar10 + lVar22" (binary_expression "(long)puVar18 + uVar10" (cast_expression "(long)puVar18" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar18")) (+ "+") (identifier "uVar10")) (+ "+") (identifier "lVar22")) () ")")))) (; ";")) (expression_statement "uVar8 = local_88;" (assignment_expression "uVar8 = local_88" (identifier "uVar8") (= "=") (identifier "local_88")) (; ";")) (if_statement "if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         ) {\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }" (if "if") (parenthesized_expression "(((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))\n         )" (( "(") (binary_expression "((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||\n         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))" (parenthesized_expression "((int *)((long)puVar18 + lVar27 + lVar22) < local_c8)" (( "(") (binary_expression "(int *)((long)puVar18 + lVar27 + lVar22) < local_c8" (cast_expression "(int *)((long)puVar18 + lVar27 + lVar22)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar18 + lVar27 + lVar22)" (( "(") (binary_expression "(long)puVar18 + lVar27 + lVar22" (binary_expression "(long)puVar18 + lVar27" (cast_expression "(long)puVar18" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar18")) (+ "+") (identifier "lVar27")) (+ "+") (identifier "lVar22")) () ")"))) (< "<") (identifier "local_c8")) () ")")) (|| "||") (parenthesized_expression "((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))" (( "(") (parenthesized_expression "(local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8))" (( "(") (comma_expression "local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" (assignment_expression "local_98 = piVar30" (identifier "local_98") (= "=") (identifier "piVar30")) (, ",") (binary_expression "piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" (binary_expression "piVar29 < local_c8" (identifier "piVar29") (< "<") (identifier "local_c8")) (&& "&&") (parenthesized_expression "(uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)" (( "(") (comma_expression "uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8" (assignment_expression "uVar8 = iVar3 - (int)piVar29" (identifier "uVar8") (= "=") (binary_expression "iVar3 - (int)piVar29" (identifier "iVar3") (- "-") (cast_expression "(int)piVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar29")))) (, ",") (binary_expression "uVar8 - 1 < 8" (binary_expression "uVar8 - 1" (identifier "uVar8") (- "-") (number_literal "1")) (< "<") (number_literal "8"))) () ")")))) () ")")) () ")"))) () ")")) (compound_statement "{\n        lVar27 = (*DAT_00159e20)(piVar29,uVar8);\n        local_98 = (int *)(lVar27 + (long)piVar30);\n      }" ({ "{") (expression_statement "lVar27 = (*DAT_00159e20)(piVar29,uVar8);" (assignment_expression "lVar27 = (*DAT_00159e20)(piVar29,uVar8)" (identifier "lVar27") (= "=") (call_expression "(*DAT_00159e20)(piVar29,uVar8)" (parenthesized_expression "(*DAT_00159e20)" (( "(") (pointer_expression "*DAT_00159e20" (* "*") (identifier "DAT_00159e20")) () ")")) (argument_list "(piVar29,uVar8)" (( "(") (identifier "piVar29") (, ",") (identifier "uVar8") () ")")))) (; ";")) (expression_statement "local_98 = (int *)(lVar27 + (long)piVar30);" (assignment_expression "local_98 = (int *)(lVar27 + (long)piVar30)" (identifier "local_98") (= "=") (cast_expression "(int *)(lVar27 + (long)piVar30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar27 + (long)piVar30)" (( "(") (binary_expression "lVar27 + (long)piVar30" (identifier "lVar27") (+ "+") (cast_expression "(long)piVar30" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar30"))) () ")")))) (; ";")) (} "}"))) (expression_statement "uVar12 = FUN_00110250(uVar12);" (assignment_expression "uVar12 = FUN_00110250(uVar12)" (identifier "uVar12") (= "=") (call_expression "FUN_00110250(uVar12)" (identifier "FUN_00110250") (argument_list "(uVar12)" (( "(") (identifier "uVar12") () ")")))) (; ";")) (expression_statement "printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);" (call_expression "printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12)" (identifier "printf") (argument_list "("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12)" (( "(") (string_literal ""[%3u] #%08x %s:"" (" """) (string_content "[%3u] #%08x %s:") (" """)) (, ",") (binary_expression "local_90 & 0xffffffff" (identifier "local_90") (& "&") (number_literal "0xffffffff")) (, ",") (cast_expression "(ulong)puVar18[local_90]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "puVar18[local_90]" (identifier "puVar18") ([ "[") (identifier "local_90") (] "]"))) (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "uVar8 = 0xfffffffe;" (assignment_expression "uVar8 = 0xfffffffe" (identifier "uVar8") (= "=") (number_literal "0xfffffffe")) (; ";")) (expression_statement "local_a0 = -1;" (assignment_expression "local_a0 = -1" (identifier "local_a0") (= "=") (number_literal "-1")) (; ";")) (expression_statement "piVar29 = local_98;" (assignment_expression "piVar29 = local_98" (identifier "piVar29") (= "=") (identifier "local_98")) (; ";")) (while_statement "while( true ) {\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }\n        if (lVar27 == 0) goto LAB_001193b3;\n        uVar10 = (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }\n        if (__ptr + uVar21 * 2 <= __ptr) break;\n        lVar26 = *__ptr;\n        plVar17 = __ptr;\n        while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }\n        lVar27 = plVar17[1];\n        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n        lVar27 = lVar27 + (ulong)local_3c[0];\n        if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }\n        piVar29 = (int *)((long)piVar29 + uVar10);\n        while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }\n        uVar8 = uVar8 + 1;\n      }" ({ "{") (while_statement "while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }" (while "while") (parenthesized_expression "(lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff)" (( "(") (comma_expression "lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff" (assignment_expression "lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8)" (identifier "lVar27") (= "=") (call_expression "FUN_001114f0(piVar29,local_3c,0,local_c8)" (identifier "FUN_001114f0") (argument_list "(piVar29,local_3c,0,local_c8)" (( "(") (identifier "piVar29") (, ",") (identifier "local_3c") (, ",") (number_literal "0") (, ",") (identifier "local_c8") () ")")))) (, ",") (binary_expression "uVar8 == 0xffffffff" (identifier "uVar8") (== "==") (number_literal "0xffffffff"))) () ")")) (compound_statement "{\n          piVar29 = local_98;\n          local_a0 = lVar27;\n          uVar8 = 0;\n        }" ({ "{") (expression_statement "piVar29 = local_98;" (assignment_expression "piVar29 = local_98" (identifier "piVar29") (= "=") (identifier "local_98")) (; ";")) (expression_statement "local_a0 = lVar27;" (assignment_expression "local_a0 = lVar27" (identifier "local_a0") (= "=") (identifier "lVar27")) (; ";")) (expression_statement "uVar8 = 0;" (assignment_expression "uVar8 = 0" (identifier "uVar8") (= "=") (number_literal "0")) (; ";")) (} "}"))) (if_statement "if (lVar27 == 0) goto LAB_001193b3;" (if "if") (parenthesized_expression "(lVar27 == 0)" (( "(") (binary_expression "lVar27 == 0" (identifier "lVar27") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_001193b3;" (goto "goto") (statement_identifier "LAB_001193b3") (; ";"))) (expression_statement "uVar10 = (ulong)local_3c[0];" (assignment_expression "uVar10 = (ulong)local_3c[0]" (identifier "uVar10") (= "=") (cast_expression "(ulong)local_3c[0]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "local_3c[0]" (identifier "local_3c") ([ "[") (number_literal "0") (] "]")))) (; ";")) (if_statement "if (-1 < (int)uVar8) {\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }" (if "if") (parenthesized_expression "(-1 < (int)uVar8)" (( "(") (binary_expression "-1 < (int)uVar8" (number_literal "-1") (< "<") (cast_expression "(int)uVar8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar8"))) () ")")) (compound_statement "{\n          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }\n          printf("%s<%lu>",puVar23,lVar27);\n        }" ({ "{") (if_statement "if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {\n            puVar23 = &DAT_00142aab;\n          }" (if "if") (parenthesized_expression "((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0))" (( "(") (binary_expression "(uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)" (parenthesized_expression "(uVar8 != 0)" (( "(") (binary_expression "uVar8 != 0" (identifier "uVar8") (!= "!=") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(puVar23 = &DAT_0013d6b7, local_a0 != 0)" (( "(") (comma_expression "puVar23 = &DAT_0013d6b7, local_a0 != 0" (assignment_expression "puVar23 = &DAT_0013d6b7" (identifier "puVar23") (= "=") (pointer_expression "&DAT_0013d6b7" (& "&") (identifier "DAT_0013d6b7"))) (, ",") (binary_expression "local_a0 != 0" (identifier "local_a0") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n            puVar23 = &DAT_00142aab;\n          }" ({ "{") (expression_statement "puVar23 = &DAT_00142aab;" (assignment_expression "puVar23 = &DAT_00142aab" (identifier "puVar23") (= "=") (pointer_expression "&DAT_00142aab" (& "&") (identifier "DAT_00142aab"))) (; ";")) (} "}"))) (expression_statement "printf("%s<%lu>",puVar23,lVar27);" (call_expression "printf("%s<%lu>",puVar23,lVar27)" (identifier "printf") (argument_list "("%s<%lu>",puVar23,lVar27)" (( "(") (string_literal ""%s<%lu>"" (" """) (string_content "%s<%lu>") (" """)) (, ",") (identifier "puVar23") (, ",") (identifier "lVar27") () ")"))) (; ";")) (} "}"))) (if_statement "if (__ptr + uVar21 * 2 <= __ptr) break;" (if "if") (parenthesized_expression "(__ptr + uVar21 * 2 <= __ptr)" (( "(") (binary_expression "__ptr + uVar21 * 2 <= __ptr" (binary_expression "__ptr + uVar21 * 2" (identifier "__ptr") (+ "+") (binary_expression "uVar21 * 2" (identifier "uVar21") (* "*") (number_literal "2"))) (<= "<=") (identifier "__ptr")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar26 = *__ptr;" (assignment_expression "lVar26 = *__ptr" (identifier "lVar26") (= "=") (pointer_expression "*__ptr" (* "*") (identifier "__ptr"))) (; ";")) (expression_statement "plVar17 = __ptr;" (assignment_expression "plVar17 = __ptr" (identifier "plVar17") (= "=") (identifier "__ptr")) (; ";")) (while_statement "while (lVar27 != lVar26) {\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }" (while "while") (parenthesized_expression "(lVar27 != lVar26)" (( "(") (binary_expression "lVar27 != lVar26" (identifier "lVar27") (!= "!=") (identifier "lVar26")) () ")")) (compound_statement "{\n          plVar17 = plVar17 + 2;\n          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;\n          lVar26 = *plVar17;\n        }" ({ "{") (expression_statement "plVar17 = plVar17 + 2;" (assignment_expression "plVar17 = plVar17 + 2" (identifier "plVar17") (= "=") (binary_expression "plVar17 + 2" (identifier "plVar17") (+ "+") (number_literal "2"))) (; ";")) (if_statement "if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;" (if "if") (parenthesized_expression "(__ptr + uVar21 * 2 <= plVar17)" (( "(") (binary_expression "__ptr + uVar21 * 2 <= plVar17" (binary_expression "__ptr + uVar21 * 2" (identifier "__ptr") (+ "+") (binary_expression "uVar21 * 2" (identifier "uVar21") (* "*") (number_literal "2"))) (<= "<=") (identifier "plVar17")) () ")")) (goto_statement "goto LAB_00119382;" (goto "goto") (statement_identifier "LAB_00119382") (; ";"))) (expression_statement "lVar26 = *plVar17;" (assignment_expression "lVar26 = *plVar17" (identifier "lVar26") (= "=") (pointer_expression "*plVar17" (* "*") (identifier "plVar17"))) (; ";")) (} "}"))) (expression_statement "lVar27 = plVar17[1];" (assignment_expression "lVar27 = plVar17[1]" (identifier "lVar27") (= "=") (subscript_expression "plVar17[1]" (identifier "plVar17") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);" (assignment_expression "uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30)" (identifier "uVar12") (= "=") (call_expression "FUN_001114f0(lVar27,local_3c,0,piVar30)" (identifier "FUN_001114f0") (argument_list "(lVar27,local_3c,0,piVar30)" (( "(") (identifier "lVar27") (, ",") (identifier "local_3c") (, ",") (number_literal "0") (, ",") (identifier "piVar30") () ")")))) (; ";")) (expression_statement "lVar27 = lVar27 + (ulong)local_3c[0];" (assignment_expression "lVar27 = lVar27 + (ulong)local_3c[0]" (identifier "lVar27") (= "=") (binary_expression "lVar27 + (ulong)local_3c[0]" (identifier "lVar27") (+ "+") (cast_expression "(ulong)local_3c[0]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "local_3c[0]" (identifier "local_3c") ([ "[") (number_literal "0") (] "]"))))) (; ";")) (if_statement "if (-1 < (int)uVar8) {\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }" (if "if") (parenthesized_expression "(-1 < (int)uVar8)" (( "(") (binary_expression "-1 < (int)uVar8" (number_literal "-1") (< "<") (cast_expression "(int)uVar8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar8"))) () ")")) (compound_statement "{\n          uVar12 = FUN_001103f0(uVar12);\n          printf(" %s",uVar12);\n        }" ({ "{") (expression_statement "uVar12 = FUN_001103f0(uVar12);" (assignment_expression "uVar12 = FUN_001103f0(uVar12)" (identifier "uVar12") (= "=") (call_expression "FUN_001103f0(uVar12)" (identifier "FUN_001103f0") (argument_list "(uVar12)" (( "(") (identifier "uVar12") () ")")))) (; ";")) (expression_statement "printf(" %s",uVar12);" (call_expression "printf(" %s",uVar12)" (identifier "printf") (argument_list "(" %s",uVar12)" (( "(") (string_literal "" %s"" (" """) (string_content " %s") (" """)) (, ",") (identifier "uVar12") () ")"))) (; ";")) (} "}"))) (expression_statement "piVar29 = (int *)((long)piVar29 + uVar10);" (assignment_expression "piVar29 = (int *)((long)piVar29 + uVar10)" (identifier "piVar29") (= "=") (cast_expression "(int *)((long)piVar29 + uVar10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)piVar29 + uVar10)" (( "(") (binary_expression "(long)piVar29 + uVar10" (cast_expression "(long)piVar29" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar29")) (+ "+") (identifier "uVar10")) () ")")))) (; ";")) (while_statement "while( true ) {\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);\n          uVar25 = (ulong)local_3c[0];\n          lVar26 = FUN_001114f0(lVar27 + uVar25);\n          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];\n          if (lVar26 == 0 && uVar10 == 0) break;\n          if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }\n          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);\n        }" ({ "{") (expression_statement "uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);" (assignment_expression "uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30)" (identifier "uVar10") (= "=") (call_expression "FUN_001114f0(lVar27,local_3c,0,piVar30)" (identifier "FUN_001114f0") (argument_list "(lVar27,local_3c,0,piVar30)" (( "(") (identifier "lVar27") (, ",") (identifier "local_3c") (, ",") (number_literal "0") (, ",") (identifier "piVar30") () ")")))) (; ";")) (expression_statement "uVar25 = (ulong)local_3c[0];" (assignment_expression "uVar25 = (ulong)local_3c[0]" (identifier "uVar25") (= "=") (cast_expression "(ulong)local_3c[0]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "local_3c[0]" (identifier "local_3c") ([ "[") (number_literal "0") (] "]")))) (; ";")) (expression_statement "lVar26 = FUN_001114f0(lVar27 + uVar25);" (assignment_expression "lVar26 = FUN_001114f0(lVar27 + uVar25)" (identifier "lVar26") (= "=") (call_expression "FUN_001114f0(lVar27 + uVar25)" (identifier "FUN_001114f0") (argument_list "(lVar27 + uVar25)" (( "(") (binary_expression "lVar27 + uVar25" (identifier "lVar27") (+ "+") (identifier "uVar25")) () ")")))) (; ";")) (expression_statement "lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];" (assignment_expression "lVar27 = lVar27 + uVar25 + (ulong)local_3c[0]" (identifier "lVar27") (= "=") (binary_expression "lVar27 + uVar25 + (ulong)local_3c[0]" (binary_expression "lVar27 + uVar25" (identifier "lVar27") (+ "+") (identifier "uVar25")) (+ "+") (cast_expression "(ulong)local_3c[0]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "local_3c[0]" (identifier "local_3c") ([ "[") (number_literal "0") (] "]"))))) (; ";")) (if_statement "if (lVar26 == 0 && uVar10 == 0) break;" (if "if") (parenthesized_expression "(lVar26 == 0 && uVar10 == 0)" (( "(") (binary_expression "lVar26 == 0 && uVar10 == 0" (binary_expression "lVar26 == 0" (identifier "lVar26") (== "==") (number_literal "0")) (&& "&&") (binary_expression "uVar10 == 0" (identifier "uVar10") (== "==") (number_literal "0"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (if_statement "if (-1 < (int)uVar8) {\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }" (if "if") (parenthesized_expression "(-1 < (int)uVar8)" (( "(") (binary_expression "-1 < (int)uVar8" (number_literal "-1") (< "<") (cast_expression "(int)uVar8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar8"))) () ")")) (compound_statement "{\n            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);\n            if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }\n            printf(" %s",puVar23);\n          }" ({ "{") (expression_statement "puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);" (assignment_expression "puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff)" (identifier "puVar23") (= "=") (cast_expression "(undefined *)FUN_0013b9f0(uVar10 & 0xffffffff)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0013b9f0(uVar10 & 0xffffffff)" (identifier "FUN_0013b9f0") (argument_list "(uVar10 & 0xffffffff)" (( "(") (binary_expression "uVar10 & 0xffffffff" (identifier "uVar10") (& "&") (number_literal "0xffffffff")) () ")"))))) (; ";")) (if_statement "if (puVar23 == (undefined *)0x0) {\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }" (if "if") (parenthesized_expression "(puVar23 == (undefined *)0x0)" (( "(") (binary_expression "puVar23 == (undefined *)0x0" (identifier "puVar23") (== "==") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);\n              snprintf(&DAT_001574a0,100,pcVar11,uVar10);\n              puVar23 = &DAT_001574a0;\n            }" ({ "{") (expression_statement "pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5)" (identifier "pcVar11") (= "=") (cast_expression "(char *)dcgettext(0,"Unknown IDX value: %lx",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"Unknown IDX value: %lx",5)" (identifier "dcgettext") (argument_list "(0,"Unknown IDX value: %lx",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Unknown IDX value: %lx"" (" """) (string_content "Unknown IDX value: %lx") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "snprintf(&DAT_001574a0,100,pcVar11,uVar10);" (call_expression "snprintf(&DAT_001574a0,100,pcVar11,uVar10)" (identifier "snprintf") (argument_list "(&DAT_001574a0,100,pcVar11,uVar10)" (( "(") (pointer_expression "&DAT_001574a0" (& "&") (identifier "DAT_001574a0")) (, ",") (number_literal "100") (, ",") (identifier "pcVar11") (, ",") (identifier "uVar10") () ")"))) (; ";")) (expression_statement "puVar23 = &DAT_001574a0;" (assignment_expression "puVar23 = &DAT_001574a0" (identifier "puVar23") (= "=") (pointer_expression "&DAT_001574a0" (& "&") (identifier "DAT_001574a0"))) (; ";")) (} "}"))) (expression_statement "printf(" %s",puVar23);" (call_expression "printf(" %s",puVar23)" (identifier "printf") (argument_list "(" %s",puVar23)" (( "(") (string_literal "" %s"" (" """) (string_content " %s") (" """)) (, ",") (identifier "puVar23") () ")"))) (; ";")) (} "}"))) (expression_statement "piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d);" (assignment_expression "piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d)" (identifier "piVar29") (= "=") (cast_expression "(int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d)" (identifier "FUN_00114210") (argument_list "(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,\n                                        uVar8 >> 0x1f,0,0,0x3d)" (( "(") (number_literal "0") (, ",") (identifier "lVar26") (, ",") (number_literal "0") (, ",") (identifier "piVar29") (, ",") (identifier "local_c8") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (cast_expression "(ulong)local_88" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "local_88")) (, ",") (number_literal "5") (, ",") (number_literal "0") (, ",") (binary_expression "uVar8 >> 0x1f" (identifier "uVar8") (>> ">>") (number_literal "0x1f")) (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (number_literal "0x3d") () ")"))))) (; ";")) (} "}"))) (expression_statement "uVar8 = uVar8 + 1;" (assignment_expression "uVar8 = uVar8 + 1" (identifier "uVar8") (= "=") (binary_expression "uVar8 + 1" (identifier "uVar8") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (labeled_statement "LAB_00119382:\n      lVar26 = *(long *)(param_1 + 0x20);" (statement_identifier "LAB_00119382") (: ":") (expression_statement "lVar26 = *(long *)(param_1 + 0x20);" (assignment_expression "lVar26 = *(long *)(param_1 + 0x20)" (identifier "lVar26") (= "=") (pointer_expression "*(long *)(param_1 + 0x20)" (* "*") (cast_expression "(long *)(param_1 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")"))))) (; ";"))) (expression_statement "uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" (identifier "dcgettext") (argument_list "(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"" (" """) (string_content "Undefined abbreviation tag %lu in unit 0x%lx in the debug_names") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar12,lVar27,(long)piVar2 - lVar26);" (call_expression "warn(uVar12,lVar27,(long)piVar2 - lVar26)" (identifier "warn") (argument_list "(uVar12,lVar27,(long)piVar2 - lVar26)" (( "(") (identifier "uVar12") (, ",") (identifier "lVar27") (, ",") (binary_expression "(long)piVar2 - lVar26" (cast_expression "(long)piVar2" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "piVar2")) (- "-") (identifier "lVar26")) () ")"))) (; ";")) (labeled_statement "LAB_001193b3:\n      if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }" (statement_identifier "LAB_001193b3") (: ":") (if_statement "if ((int)uVar8 < 1) {\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }" (if "if") (parenthesized_expression "((int)uVar8 < 1)" (( "(") (binary_expression "(int)uVar8 < 1" (cast_expression "(int)uVar8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar8")) (< "<") (number_literal "1")) () ")")) (compound_statement "{\n        pcVar11 = (char *)dcgettext(0," <no entries>",5);\n        printf(pcVar11);\n      }" ({ "{") (expression_statement "pcVar11 = (char *)dcgettext(0," <no entries>",5);" (assignment_expression "pcVar11 = (char *)dcgettext(0," <no entries>",5)" (identifier "pcVar11") (= "=") (cast_expression "(char *)dcgettext(0," <no entries>",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0," <no entries>",5)" (identifier "dcgettext") (argument_list "(0," <no entries>",5)" (( "(") (number_literal "0") (, ",") (string_literal "" <no entries>"" (" """) (string_content " <no entries>") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar11);" (call_expression "printf(pcVar11)" (identifier "printf") (argument_list "(pcVar11)" (( "(") (identifier "pcVar11") () ")"))) (; ";")) (} "}")))) (expression_statement "putc(10,stdout);" (call_expression "putc(10,stdout)" (identifier "putc") (argument_list "(10,stdout)" (( "(") (number_literal "10") (, ",") (identifier "stdout") () ")"))) (; ";")) (expression_statement "local_84 = local_84 + local_88;" (assignment_expression "local_84 = local_84 + local_88" (identifier "local_84") (= "=") (binary_expression "local_84 + local_88" (identifier "local_84") (+ "+") (identifier "local_88"))) (; ";")) (expression_statement "bVar31 = local_90 != uVar7;" (assignment_expression "bVar31 = local_90 != uVar7" (identifier "bVar31") (= "=") (binary_expression "local_90 != uVar7" (identifier "local_90") (!= "!=") (identifier "uVar7"))) (; ";")) (expression_statement "local_90 = local_90 + 1;" (assignment_expression "local_90 = local_90 + 1" (identifier "local_90") (= "=") (binary_expression "local_90 + 1" (identifier "local_90") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar31)" (( "(") (identifier "bVar31") () ")")) (; ";")) (} "}"))) (expression_statement "free(__ptr);" (call_expression "free(__ptr)" (identifier "free") (argument_list "(__ptr)" (( "(") (identifier "__ptr") () ")"))) (; ";")) (expression_statement "piVar2 = local_c8;" (assignment_expression "piVar2 = local_c8" (identifier "piVar2") (= "=") (identifier "local_c8")) (; ";")) (goto_statement "goto joined_r0x0011898e;" (goto "goto") (statement_identifier "joined_r0x0011898e") (; ";")) (} "}")))

int function_1(type_1 *section,void *file)

{
  int *var_23;
  int *var_3;
  type_2 *puVar3;
  long var_33;
  type_3 var_28;
  type_4 var_14;
  char *pcVar7;
  type_4 var_9;
  char *pcVar9;
  char *message;
  type_5 var_6;
  type_6 var_43;
  type_6 *var_48;
  type_6 var_47;
  type_6 *var_45;
  type_6 *var_46;
  type_7 *var_54;
  type_5 var_49;
  type_3 *var_37;
  type_1 *in_RDX;
  type_3 var_26;
  int var_8;
  int var_18;
  int iVar21;
  type_8 *puVar22;
  type_3 *var_36;
  int *var_17;
  type_4 var_27;
  long var_39;
  type_2 *var_34;
  int *var_4;
  int *var_5;
  int *var_7;
  bool bVar31;
  type_4 var_21;
  int *var_15;
  type_4 var_22;
  type_4 var_24;
  type_4 var_31;
  long var_32;
  type_6 var_51;
  int *local_98;
  type_4 var_30;
  type_3 var_20;
  type_3 var_38;
  type_3 var_19;
  type_3 var_42;
  
  var_3 = (int *)section->start;
  var_4 = (int *)((long)var_3 + section->size);
  var_1((type_1 *)section->name,(int)section + 0x18,in_RDX);
  var_2(str,file);
joined_r0x0011898e:
  if (var_3 < var_4) {
    var_5 = var_3 + 1;
    var_7 = var_5;
    if (var_5 < var_4) {
      var_8 = 4;
LAB_00118a58:
      var_6 = (*byte_get)((type_2 *)var_3,var_8);
      var_20 = 4;
      if (var_6 == 0xffffffff) {
        var_7 = var_3 + 3;
        if (var_7 < var_4) {
          var_8 = 8;
        }
        else if ((var_4 <= var_5) || (var_8 = (int)var_4 - (int)var_5, 7 < var_8 - 1U)) {
          var_20 = 8;
          goto LAB_001189c5;
        }
        var_6 = (*byte_get)((type_2 *)var_5,var_8);
        var_20 = 8;
      }
      var_15 = (int *)((long)var_7 + var_6);
      var_9 = (long)var_7 - (long)section->start;
      var_14 = var_9 + var_6;
      if (!var_10(var_9,var_6)) goto LAB_001189d9;
LAB_00118a9b:
      pcVar9 = var_11("x",var_6,0);
      pcVar7 = section->name;
      var_34 = section->start;
      message = (char *)var_12(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);
      var_13(message,pcVar7,(long)var_3 - (long)var_34,pcVar9);
      var_8 = 0;
    }
    else {
      var_8 = (int)var_4 - (int)var_3;
      if (var_8 - 1U < 8) goto LAB_00118a58;
      var_20 = 4;
LAB_001189c5:
      var_6 = 0;
      var_14 = (long)var_7 - (long)section->start;
      var_15 = var_7;
LAB_001189d9:
      if (section->size < var_14) goto LAB_00118a9b;
      var_5 = (int *)((long)var_7 + 2);
      var_8 = (int)var_6;
      if (var_5 < var_15) {
        var_18 = 2;
LAB_00118af5:
        var_6 = (*byte_get)((type_2 *)var_7,var_18);
        pcVar7 = (char *)var_12(0,"Version %ld\n",5);
        var_16(pcVar7,var_6 & 0xffff);
        if ((short)var_6 != 5) goto LAB_00118a22;
        var_17 = var_7 + 1;
        var_18 = (int)var_15;
        if (var_17 < var_15) {
          iVar21 = 2;
LAB_00119876:
          var_6 = (*byte_get)((type_2 *)var_5,iVar21);
          if ((short)var_6 != 0) {
            pcVar7 = (char *)var_12(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5)
            ;
            var_13(pcVar7,var_6 & 0xffff);
          }
          if (var_7 + 2 < var_15) {
LAB_00118b5e:
            var_8 = 4;
          }
          else if ((var_15 <= var_17) || (var_8 = var_18 - (int)var_17, 7 < var_8 - 1U))
          goto LAB_00118b74;
          var_6 = (*byte_get)((type_2 *)var_17,var_8);
          var_19 = (type_3)var_6;
          if (var_19 == 0) goto LAB_00118b74;
        }
        else {
          if ((var_5 < var_15) && (iVar21 = var_8 + -2, var_8 - 3U < 8)) goto LAB_00119876;
          if (var_7 + 2 < var_15) goto LAB_00118b5e;
LAB_00118b74:
          pcVar7 = (char *)var_12(0,"Compilation unit count must be >= 1 in .debug_names\n",5);
          var_13(pcVar7);
          var_19 = 0;
        }
        var_17 = var_7 + 2;
        var_5 = var_7 + 3;
        if (var_5 < var_15) {
          var_8 = 4;
LAB_00119825:
          var_6 = (*byte_get)((type_2 *)var_17,var_8);
          var_28 = (type_3)var_6;
          if (var_7 + 4 < var_15) {
LAB_001197d8:
            var_8 = 4;
          }
          else if ((var_15 <= var_5) || (var_8 = var_18 - (int)var_5, 7 < var_8 - 1U))
          goto LAB_00118bd4;
          var_6 = (*byte_get)((type_2 *)var_5,var_8);
          local_98._0_4_ = (type_3)var_6;
          if (var_7 + 5 < var_15) goto LAB_001195e0;
          if ((var_7 + 4 < var_15) && (var_8 = var_18 - (int)(var_7 + 4), var_8 - 1U < 8))
          goto LAB_001195e5;
LAB_00118beb:
          var_24 = 0;
          var_38 = 0;
          var_30 = 0;
          if (var_15 <= var_7 + 6) goto LAB_00118c14;
LAB_0011975e:
          var_6 = (*byte_get)((type_2 *)(var_7 + 5),4);
          var_51._0_4_ = (int)var_6;
          var_21 = var_6 & 0xffffffff;
          var_31 = (type_4)((int)var_51 * var_20);
          var_32 = var_21 << 2;
          var_8 = (int)var_51;
          if (var_7 + 7 < var_15) {
LAB_00119667:
            var_51._0_4_ = var_8;
            var_22 = (*byte_get)((type_2 *)(var_7 + 6),4);
            if (var_7 + 8 < var_15) goto LAB_00119860;
            var_22 = var_22 & 0xffffffff;
            var_8 = var_18 - ((int)var_7 + 0x1c);
            if (7 < var_8 - 1U) goto LAB_00118c5e;
          }
          else {
            var_8 = var_18 - (int)(var_7 + 6);
            if (7 < var_8 - 1U) goto LAB_00118c46;
            var_22 = (*byte_get)((type_2 *)(var_7 + 6),var_8);
            if (var_15 <= var_7 + 8) {
              var_22 = var_22 & 0xffffffff;
              goto LAB_00118c5e;
            }
LAB_00119860:
            var_22 = var_22 & 0xffffffff;
LAB_00119867:
            var_8 = 4;
          }
          var_5 = var_7 + 8;
          var_6 = (*byte_get)((type_2 *)(var_7 + 7),var_8);
          var_8 = (int)var_6;
          if ((var_6 & 3) != 0) {
            pcVar7 = (char *)var_12(0,
                                       "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"
                                       ,5);
            var_8 = (-var_8 & 3U) + var_8;
            var_13(pcVar7,var_6 & 0xffffffff);
          }
          pcVar7 = (char *)var_12(0,"Augmentation string:",5);
          var_16(pcVar7);
          if (var_8 != 0) {
            var_7 = (int *)((long)var_7 + (type_4)(var_8 - 1) + 0x21);
            var_17 = var_5;
            do {
              var_23 = (int *)((long)var_17 + 1);
              if (var_23 < var_15) {
                var_8 = 1;
LAB_00119753:
                var_6 = (*byte_get)((type_2 *)var_17,var_8);
                var_14 = var_6 & 0xff;
              }
              else {
                var_14 = 0;
                if ((var_17 < var_15) && (var_8 = var_18 - (int)var_17, var_8 - 1U < 8))
                goto LAB_00119753;
              }
              var_16(" %02x",var_14);
              var_17 = var_23;
              var_5 = var_7;
            } while (var_23 != var_7);
          }
        }
        else {
          if ((var_17 < var_15) && (var_8 = var_18 - (int)var_17, var_8 - 1U < 8))
          goto LAB_00119825;
          var_28 = 0;
          if (var_7 + 4 < var_15) goto LAB_001197d8;
LAB_00118bd4:
          local_98._0_4_ = 0;
          if (var_15 <= var_7 + 5) goto LAB_00118beb;
LAB_001195e0:
          var_8 = 4;
LAB_001195e5:
          var_5 = var_7 + 5;
          var_6 = (*byte_get)((type_2 *)(var_7 + 4),var_8);
          var_38 = (type_3)var_6;
          var_24 = var_6 & 0xffffffff;
          var_30 = var_24 << 2;
          if (var_7 + 6 < var_15) goto LAB_0011975e;
          if ((var_15 <= var_5) || (var_8 = var_18 - (int)var_5, 7 < var_8 - 1U)) {
LAB_00118c14:
            var_32 = 0;
            var_21 = 0;
            var_31 = 0;
            var_51._0_4_ = 0;
            var_8 = (int)var_51;
            var_51._0_4_ = 0;
            if (var_15 <= var_7 + 7) goto LAB_00118c46;
            goto LAB_00119667;
          }
          var_6 = (*byte_get)((type_2 *)var_5,var_8);
          var_51._0_4_ = (int)var_6;
          var_21 = var_6 & 0xffffffff;
          var_31 = (type_4)((int)var_51 * var_20);
          var_32 = var_21 << 2;
          var_8 = (int)var_51;
          if (var_7 + 7 < var_15) goto LAB_00119667;
LAB_00118c46:
          var_22 = 0;
          if (var_7 + 8 < var_15) goto LAB_00119867;
LAB_00118c5e:
          pcVar7 = (char *)var_12(0,"Augmentation string:",5);
          var_16(pcVar7);
          var_5 = var_7 + 8;
        }
        var_25(10,stdout);
        var_25(10,stdout);
        pcVar7 = (char *)var_12(0,"CU table:\n",5);
        var_16(pcVar7);
        if (var_19 != 0) {
          var_9 = (type_4)var_20;
          var_14 = 0;
          var_7 = var_5;
          do {
            var_27 = var_14;
            var_17 = (int *)((long)var_7 + var_9);
            var_26 = var_20;
            if ((var_17 < var_15) ||
               ((var_6 = 0, (int *)((long)var_17 - var_9) < var_15 &&
                (var_26 = var_18 - (int)var_7, var_26 - 1 < 8)))) {
              var_6 = (*byte_get)((type_2 *)var_7,var_26);
            }
            pcVar7 = (char *)var_12(0,"[%3u] 0x%lx\n",5);
            var_26 = (int)var_27 + 1;
            var_16(pcVar7,var_27,var_6);
            var_14 = (type_4)var_26;
            var_7 = var_17;
          } while (var_26 != var_19);
          var_5 = (int *)((long)var_5 + var_9 * (var_27 + 1));
        }
        var_25(10,stdout);
        pcVar7 = (char *)var_12(0,"TU table:\n",5);
        var_16(pcVar7);
        if (var_28 != 0) {
          var_9 = (type_4)var_20;
          var_14 = 0;
          var_7 = var_5;
          while( true ) {
            var_17 = (int *)((long)var_7 + var_9);
            var_26 = var_20;
            if ((var_17 < var_15) ||
               ((var_6 = 0, (int *)((long)var_17 - var_9) < var_15 &&
                (var_26 = var_18 - (int)var_7, var_26 - 1 < 8)))) {
              var_6 = (*byte_get)((type_2 *)var_7,var_26);
            }
            pcVar7 = (char *)var_12(0,"[%3u] 0x%lx\n",5);
            var_16(pcVar7,var_14,var_6);
            var_26 = (int)var_14 + 1;
            if (var_26 == var_28) break;
            var_14 = (type_4)var_26;
            var_7 = var_17;
          }
          var_5 = (int *)((long)var_5 + var_9 * (var_14 + 1));
        }
        var_25(10,stdout);
        pcVar7 = (char *)var_12(0,"Foreign TU table:\n",5);
        var_16(pcVar7);
        if ((type_3)local_98 != 0) {
          var_14 = 0;
          var_7 = var_5;
          do {
            if (var_7 + 2 < var_15) {
              var_8 = 8;
LAB_00118ee3:
              var_6 = (*byte_get)((type_2 *)var_7,var_8);
            }
            else {
              var_6 = 0;
              if ((var_7 < var_15) && (var_8 = var_18 - (int)var_7, var_8 - 1U < 8))
              goto LAB_00118ee3;
            }
            pcVar7 = (char *)var_12(0,"[%3u] ",5);
            var_16(pcVar7,var_14);
            var_29(var_6,8);
            var_25(10,stdout);
            var_28 = (int)var_14 + 1;
            if (var_28 == (type_3)local_98) goto LAB_00118eee;
            var_14 = (type_4)var_28;
            var_7 = var_7 + 2;
          } while( true );
        }
        goto LAB_00118ef8;
      }
      if ((var_7 < var_15) && (var_18 = var_8, var_8 - 1U < 8)) goto LAB_00118af5;
      pcVar7 = (char *)var_12(0,"Version %ld\n",5);
      var_16(pcVar7,0);
LAB_00118a22:
      pcVar7 = (char *)var_12(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);
      var_13(pcVar7);
      var_8 = 0;
    }
  }
  else {
    var_8 = 1;
  }
  return var_8;
LAB_00118eee:
  var_5 = var_5 + var_14 * 2 + 2;
LAB_00118ef8:
  var_25(10,stdout);
  var_37 = (type_3 *)(var_30 + (long)var_5);
  var_33 = var_31 + var_32;
  var_34 = (type_2 *)((long)var_37 + var_31 + var_33);
  var_7 = (int *)(var_34 + var_22);
  if (var_15 < var_7) {
    var_34 = section->start;
    pcVar7 = (char *)var_12(0,
                               "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"
                               ,5);
    var_13(pcVar7,(long)var_7 - (long)var_34,(long)var_15 - (long)var_34,
         (long)var_3 - (long)var_34);
    return 0;
  }
  var_14 = 0;
  if (var_24 != 0) {
    var_14 = 0;
    var_17 = var_5 + var_24;
    do {
      var_14 = (var_14 + 1) - (type_4)(*var_5 == 0);
      var_5 = var_5 + 1;
    } while (var_17 != var_5);
  }
  var_9 = 0;
  var_39 = 0;
  pcVar7 = (char *)var_35(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",var_24);
  var_16(pcVar7,var_14,var_24);
  if (var_21 != 0) {
    var_27 = 0;
    var_39 = 0;
    var_9 = 0;
    var_28 = *var_37;
    var_36 = var_37;
    while (var_36 = var_36 + 1, var_37 + var_21 != var_36) {
      var_26 = *var_36;
      if (var_28 % var_38 == var_26 % var_38) {
        var_27 = var_27 + 1;
        var_39 = var_39 + 1;
        var_28 = var_26;
        if (var_9 < var_27) {
          var_9 = var_27;
        }
      }
      else {
        var_27 = 0;
        var_28 = var_26;
      }
    }
    var_14 = var_14 + var_39;
  }
  pcVar7 = (char *)var_12(0,
                             "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"
                             ,5);
  var_16(pcVar7,var_21,var_39,var_9);
  if (var_21 != var_14) {
                    /* WARNING: Subroutine does not return */
    var_40("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,
                  "display_debug_names");
  }
  var_21 = 0;
  var_14 = 0;
  var_45 = (type_6 *)0x0;
  while( true ) {
    var_43 = var_41(var_34,&var_42,0,(type_2 *)var_7);
    var_34 = var_34 + var_42;
    if (var_43 == 0) break;
    if (var_14 == var_21) {
      var_21 = var_14 * 2;
      if (var_21 < 0x100) {
        var_21 = 0x100;
      }
      var_45 = (type_6 *)var_44(var_45,var_21 << 4);
    }
    if (var_21 <= var_14) {
                    /* WARNING: Subroutine does not return */
      var_40("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,
                    "display_debug_names");
    }
    var_46 = var_45 + var_14 * 2;
    if (var_45 < var_46) {
      var_47 = *var_45;
      var_48 = var_45;
      while (var_43 != var_47) {
        var_48 = var_48 + 2;
        if (var_46 <= var_48) goto LAB_001190c6;
        var_47 = *var_48;
      }
      puVar3 = section->start;
      pcVar7 = (char *)var_12(0,
                                 "Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n"
                                 ,5);
      var_13(pcVar7,var_43,(long)var_3 - (long)puVar3);
    }
LAB_001190c6:
    var_46[1] = (type_6)var_34;
    *var_46 = var_43;
    var_14 = var_14 + 1;
    var_41(var_34,&var_42,0,(type_2 *)var_7);
    var_34 = var_34 + var_42;
    do {
      var_36 = &var_42;
      var_43 = var_41(var_34,&var_42,0,(type_2 *)var_7);
      var_9 = (type_4)var_42;
      var_47 = var_41(var_34 + var_9,var_36,0,(type_2 *)var_7);
      var_34 = var_34 + var_9 + var_42;
    } while (var_47 != 0 || var_43 != 0);
  }
  pcVar7 = (char *)var_12(0,"\nSymbol table:\n",5);
  var_16(pcVar7);
  if ((int)var_51 != 0) {
    var_30 = 0;
    var_38 = 0;
    var_28 = (int)var_51 - 1;
    do {
      var_9 = (type_4)var_38;
      var_39 = var_9 + var_20;
      var_5 = (int *)((long)var_37 + var_9 + var_32);
      var_26 = var_20;
      if (((int *)((long)var_37 + var_39 + var_32) < var_15) ||
         ((var_6 = 0, var_5 < var_15 && (var_26 = var_18 - (int)var_5, var_26 - 1 < 8)))) {
        var_6 = (*byte_get)((type_2 *)var_5,var_26);
      }
      var_5 = (int *)((long)var_37 + var_9 + var_33);
      var_26 = var_20;
      if (((int *)((long)var_37 + var_39 + var_33) < var_15) ||
         ((local_98 = var_7, var_5 < var_15 &&
          (var_26 = var_18 - (int)var_5, var_26 - 1 < 8)))) {
        var_49 = (*byte_get)((type_2 *)var_5,var_26);
        local_98 = (int *)(var_49 + (long)var_7);
      }
      var_34 = var_50(var_6);
      var_16("[%3u] #%08x %s:",var_30 & 0xffffffff,(type_4)var_37[var_30],var_34);
      var_26 = 0xfffffffe;
      var_51 = 0xffffffffffffffff;
      var_5 = local_98;
      while( true ) {
        while (var_43 = var_41((type_2 *)var_5,&var_42,0,(type_2 *)var_15),
              var_26 == 0xffffffff) {
          var_5 = local_98;
          var_51 = var_43;
          var_26 = 0;
        }
        if (var_43 == 0) goto LAB_001193b3;
        var_9 = (type_4)var_42;
        if (-1 < (int)var_26) {
          if ((var_26 != 0) || (puVar22 = &DAT_0013d6b7, var_51 != 0)) {
            puVar22 = &DAT_00142aab;
          }
          var_16("%s<%lu>",puVar22,var_43);
        }
        if (var_45 + var_14 * 2 <= var_45) break;
        var_47 = *var_45;
        var_46 = var_45;
        while (var_43 != var_47) {
          var_46 = var_46 + 2;
          if (var_45 + var_14 * 2 <= var_46) goto LAB_00119382;
          var_47 = *var_46;
        }
        var_34 = (type_2 *)var_46[1];
        var_43 = var_41(var_34,&var_42,0,(type_2 *)var_7);
        var_34 = var_34 + var_42;
        if (-1 < (int)var_26) {
          pcVar7 = var_52(var_43);
          var_16(" %s",pcVar7);
        }
        var_5 = (int *)((long)var_5 + var_9);
        while( true ) {
          var_36 = &var_42;
          var_43 = var_41(var_34,&var_42,0,(type_2 *)var_7);
          var_9 = (type_4)var_42;
          var_47 = var_41(var_34 + var_9,var_36,0,(type_2 *)var_7);
          var_34 = var_34 + var_9 + var_42;
          if (var_47 == 0 && var_43 == 0) break;
          if (-1 < (int)var_26) {
            var_54 = var_53((type_3)var_43);
            if (var_54 == (char *)0x0) {
              pcVar7 = (char *)var_12(0,"Unknown IDX value: %lx",5);
              var_55(buffer_10768,100,pcVar7,var_43);
              var_54 = buffer_10768;
            }
            var_16(" %s",var_54);
          }
          var_5 = (int *)var_56
                                     (0,var_47,0,(type_2 *)var_5,(type_2 *)var_15,0,0,
                                      (type_4)var_20,5,(type_9 *)0x0,var_26 >> 0x1f,
                                      (type_1 *)0x0,(type_10 *)0x0,'=');
        }
        var_26 = var_26 + 1;
      }
LAB_00119382:
      var_34 = section->start;
      pcVar7 = (char *)var_12(0,
                                 "Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n"
                                 ,5);
      var_13(pcVar7,var_43,(long)var_3 - (long)var_34);
LAB_001193b3:
      if ((int)var_26 < 1) {
        pcVar7 = (char *)var_12(0," <no entries>",5);
        var_16(pcVar7);
      }
      var_25(10,stdout);
      var_38 = var_38 + var_20;
      bVar31 = var_30 != var_28;
      var_30 = var_30 + 1;
    } while (bVar31);
  }
  var_57(var_45);
  var_3 = var_15;
  goto joined_r0x0011898e;
}


(translation_unit (function_definition type: (type_identifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (sized_type_specifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)))) body: (compound_statement (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier)))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)))) right: (binary_expression left: (number_literal) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier)) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) consequence: (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)))) right: (binary_expression left: (number_literal) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (number_literal)))))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)))) right: (binary_expression left: (number_literal) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (number_literal)))))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (number_literal))) right: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier))))) right: (number_literal)) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier))) right: (number_literal)))) (goto_statement label: (statement_identifier))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)))) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (number_literal)))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (binary_expression left: (number_literal) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier))))) right: (number_literal)))))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier)))) right: (identifier)) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (binary_expression left: (identifier) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (while_statement condition: (parenthesized_expression (true)) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier)))) right: (identifier)) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (binary_expression left: (identifier) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)))) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (number_literal)))))) consequence: (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (true))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))))))) (return_statement (identifier)) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier)) (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier)) (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier))))) (return_statement (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (string_literal (string_content) (escape_sequence)) (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (while_statement condition: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (string_literal (string_content)) (number_literal) (string_literal (string_content))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (while_statement condition: (parenthesized_expression (true)) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (string_literal (string_content)) (number_literal) (string_literal (string_content))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal)))))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))))))) condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (escape_sequence) (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier)) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier)) right: (identifier)))) right: (identifier))) right: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier)) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier)) right: (identifier)))) right: (identifier))) right: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier))))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (binary_expression left: (identifier) right: (number_literal)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (identifier))) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (while_statement condition: (parenthesized_expression (true)) body: (compound_statement (while_statement condition: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier)))) right: (binary_expression left: (identifier) right: (number_literal)))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (identifier))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier)))))) (while_statement condition: (parenthesized_expression (true)) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (break_statement)) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (number_literal) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal) (identifier) (identifier) (number_literal) (number_literal) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) (number_literal) (number_literal) (binary_expression left: (identifier) right: (number_literal)) (number_literal) (number_literal) (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (identifier))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))))

undefined8 MASKED(long param_1,undefined8 param_2)

{
  int *piVar1;
  int *piVar2;
  int iVar3;
  byte bVar4;
  ushort uVar5;
  short sVar6;
  uint uVar7;
  uint uVar8;
  uint uVar9;
  ulong uVar10;
  char *pcVar11;
  undefined8 uVar12;
  undefined8 uVar13;
  undefined8 uVar14;
  long *plVar15;
  long lVar16;
  long *__ptr;
  long *plVar17;
  uint *puVar18;
  uint *puVar19;
  uint uVar20;
  ulong uVar21;
  long lVar22;
  undefined *puVar23;
  int *piVar24;
  ulong uVar25;
  long lVar26;
  long lVar27;
  int *piVar28;
  int *piVar29;
  int *piVar30;
  bool bVar31;
  ulong local_d0;
  int *local_c8;
  ulong local_c0;
  ulong local_b8;
  ulong local_b0;
  long local_a8;
  long local_a0;
  int *local_98;
  ulong local_90;
  uint local_88;
  uint local_84;
  uint local_3c [3];
  
  piVar2 = *(int **)(param_1 + 0x20);
  piVar28 = (int *)((long)piVar2 + *(long *)(param_1 + 0x30));
  FUN_00110740(*(undefined8 *)(param_1 + 0x10),param_1 + 0x18);
  FUN_0010fed0(10,param_2);
joined_r0x0011898e:
  if (piVar2 < piVar28) {
    piVar29 = piVar2 + 1;
    piVar30 = piVar29;
    if (piVar29 < piVar28) {
      lVar22 = 4;
LAB_00118a58:
      uVar21 = (*DAT_00159e20)(piVar2,lVar22);
      local_88 = 4;
      if (uVar21 == 0xffffffff) {
        piVar30 = piVar2 + 3;
        if (piVar30 < piVar28) {
          lVar22 = 8;
        }
        else if ((piVar28 <= piVar29) ||
                (lVar22 = (long)piVar28 - (long)piVar29, 7 < (int)lVar22 - 1U)) {
          local_88 = 8;
          goto LAB_001189c5;
        }
        uVar21 = (*DAT_00159e20)(piVar29,lVar22);
        local_88 = 8;
      }
      local_c8 = (int *)((long)piVar30 + uVar21);
      uVar25 = (long)piVar30 - *(long *)(param_1 + 0x20);
      uVar10 = uVar25 + uVar21;
      if (!CARRY8(uVar25,uVar21)) goto LAB_001189d9;
LAB_00118a9b:
      uVar13 = FUN_0010ebb0("x",uVar21,0);
      uVar12 = *(undefined8 *)(param_1 + 0x10);
      lVar22 = *(long *)(param_1 + 0x20);
      uVar14 = dcgettext(0,"Debug info is corrupted, %s header at %#lx has length %s\n",5);
      warn(uVar14,uVar12,(long)piVar2 - lVar22,uVar13);
      uVar12 = 0;
    }
    else {
      lVar22 = (long)piVar28 - (long)piVar2;
      if ((int)lVar22 - 1U < 8) goto LAB_00118a58;
      local_88 = 4;
LAB_001189c5:
      uVar21 = 0;
      uVar10 = (long)piVar30 - *(long *)(param_1 + 0x20);
      local_c8 = piVar30;
LAB_001189d9:
      if (*(ulong *)(param_1 + 0x30) < uVar10) goto LAB_00118a9b;
      piVar29 = (int *)((long)piVar30 + 2);
      if (piVar29 < local_c8) {
        uVar10 = 2;
LAB_00118af5:
        uVar5 = (*DAT_00159e20)(piVar30,uVar10);
        pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);
        printf(pcVar11,(ulong)uVar5);
        if (uVar5 != 5) goto LAB_00118a22;
        piVar24 = piVar30 + 1;
        if (piVar24 < local_c8) {
          lVar22 = 2;
LAB_00119876:
          sVar6 = (*DAT_00159e20)(piVar29,lVar22);
          if (sVar6 != 0) {
            uVar12 = dcgettext(0,"Padding field of .debug_names must be 0 (found 0x%x)\n",5);
            warn(uVar12,sVar6);
          }
          if (piVar30 + 2 < local_c8) {
LAB_00118b5e:
            lVar22 = 4;
          }
          else if ((local_c8 <= piVar24) ||
                  (lVar22 = (long)local_c8 - (long)piVar24, 7 < (int)lVar22 - 1U))
          goto LAB_00118b74;
          uVar7 = (*DAT_00159e20)(piVar24,lVar22);
          if (uVar7 == 0) goto LAB_00118b74;
        }
        else {
          if ((piVar29 < local_c8) && (lVar22 = uVar21 - 2, (int)lVar22 - 1U < 8))
          goto LAB_00119876;
          if (piVar30 + 2 < local_c8) goto LAB_00118b5e;
LAB_00118b74:
          uVar12 = dcgettext(0,"Compilation unit count must be >= 1 in .debug_names\n",5);
          warn(uVar12);
          uVar7 = 0;
        }
        piVar24 = piVar30 + 2;
        piVar29 = piVar30 + 3;
        iVar3 = (int)local_c8;
        if (piVar29 < local_c8) {
          lVar22 = 4;
LAB_00119825:
          uVar8 = (*DAT_00159e20)(piVar24,lVar22);
          if (piVar30 + 4 < local_c8) {
LAB_001197d8:
            lVar22 = 4;
          }
          else if ((local_c8 <= piVar29) ||
                  (lVar22 = (long)local_c8 - (long)piVar29, 7 < (int)lVar22 - 1U))
          goto LAB_00118bd4;
          local_98._0_4_ = (*DAT_00159e20)(piVar29,lVar22);
          if (piVar30 + 5 < local_c8) goto LAB_001195e0;
          if ((piVar30 + 4 < local_c8) &&
             (lVar22 = (long)local_c8 - (long)(piVar30 + 4), (int)lVar22 - 1U < 8))
          goto LAB_001195e5;
LAB_00118beb:
          local_b8 = 0;
          local_84 = 0;
          local_90 = 0;
          if (local_c8 <= piVar30 + 6) goto LAB_00118c14;
LAB_0011975e:
          local_a0._0_4_ = (*DAT_00159e20)(piVar30 + 5,4);
          local_d0 = (ulong)(uint)local_a0;
          local_b0 = (ulong)((uint)local_a0 * local_88);
          local_a8 = local_d0 << 2;
          if (piVar30 + 7 < local_c8) {
LAB_00119667:
            uVar20 = (*DAT_00159e20)(piVar30 + 6,4);
            if (piVar30 + 8 < local_c8) goto LAB_00119860;
            local_c0 = (ulong)uVar20;
            lVar22 = (long)local_c8 - (long)(piVar30 + 7);
            if (7 < (int)lVar22 - 1U) goto LAB_00118c5e;
          }
          else {
            if (7 < (iVar3 - (int)(piVar30 + 6)) - 1U) goto LAB_00118c46;
            uVar20 = (*DAT_00159e20)(piVar30 + 6);
            if (local_c8 <= piVar30 + 8) {
              local_c0 = (ulong)uVar20;
              goto LAB_00118c5e;
            }
LAB_00119860:
            local_c0 = (ulong)uVar20;
LAB_00119867:
            lVar22 = 4;
          }
          piVar29 = piVar30 + 8;
          uVar9 = (*DAT_00159e20)(piVar30 + 7,lVar22);
          uVar20 = uVar9;
          if ((uVar9 & 3) != 0) {
            uVar12 = dcgettext(0,
                               "Augmentation string length %u must be rounded up to a multiple of 4 in .debug_names.\n"
                               ,5);
            uVar20 = (-uVar9 & 3) + uVar9;
            warn(uVar12,uVar9);
          }
          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);
          printf(pcVar11);
          if (uVar20 != 0) {
            piVar30 = (int *)((long)piVar30 + (ulong)(uVar20 - 1) + 0x21);
            piVar24 = piVar29;
            do {
              piVar1 = (int *)((long)piVar24 + 1);
              if (piVar1 < local_c8) {
                uVar21 = 1;
LAB_00119753:
                bVar4 = (*DAT_00159e20)(piVar24,uVar21);
                uVar21 = (ulong)bVar4;
              }
              else {
                uVar21 = 0;
                if ((piVar24 < local_c8) && ((int)((long)local_c8 - (long)piVar24) - 1U < 8)) {
                  uVar21 = (long)local_c8 - (long)piVar24 & 0xffffffff;
                  goto LAB_00119753;
                }
              }
              printf(" %02x",uVar21);
              piVar24 = piVar1;
              piVar29 = piVar30;
            } while (piVar1 != piVar30);
          }
        }
        else {
          if ((piVar24 < local_c8) &&
             (lVar22 = (long)local_c8 - (long)piVar24, (int)lVar22 - 1U < 8)) goto LAB_00119825;
          uVar8 = 0;
          if (piVar30 + 4 < local_c8) goto LAB_001197d8;
LAB_00118bd4:
          local_98._0_4_ = 0;
          if (local_c8 <= piVar30 + 5) goto LAB_00118beb;
LAB_001195e0:
          lVar22 = 4;
LAB_001195e5:
          piVar29 = piVar30 + 5;
          local_84 = (*DAT_00159e20)(piVar30 + 4,lVar22);
          local_b8 = (ulong)local_84;
          local_90 = local_b8 << 2;
          if (piVar30 + 6 < local_c8) goto LAB_0011975e;
          if ((local_c8 <= piVar29) || (7 < (int)((long)local_c8 - (long)piVar29) - 1U)) {
LAB_00118c14:
            local_a8 = 0;
            local_d0 = 0;
            local_b0 = 0;
            local_a0._0_4_ = 0;
            if (local_c8 <= piVar30 + 7) goto LAB_00118c46;
            goto LAB_00119667;
          }
          local_a0._0_4_ = (*DAT_00159e20)(piVar29,(long)local_c8 - (long)piVar29);
          local_d0 = (ulong)(uint)local_a0;
          local_b0 = (ulong)((uint)local_a0 * local_88);
          local_a8 = local_d0 << 2;
          if (piVar30 + 7 < local_c8) goto LAB_00119667;
LAB_00118c46:
          local_c0 = 0;
          if (piVar30 + 8 < local_c8) goto LAB_00119867;
LAB_00118c5e:
          pcVar11 = (char *)dcgettext(0,"Augmentation string:",5);
          printf(pcVar11);
          piVar29 = piVar30 + 8;
        }
        putc(10,stdout);
        putc(10,stdout);
        pcVar11 = (char *)dcgettext(0,"CU table:\n",5);
        printf(pcVar11);
        if (uVar7 != 0) {
          uVar10 = (ulong)local_88;
          uVar21 = 0;
          piVar30 = piVar29;
          do {
            uVar25 = uVar21;
            piVar24 = (int *)((long)piVar30 + uVar10);
            uVar20 = local_88;
            if ((piVar24 < local_c8) ||
               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&
                (uVar20 = iVar3 - (int)piVar30, uVar20 - 1 < 8)))) {
              uVar12 = (*DAT_00159e20)(piVar30,uVar20);
            }
            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);
            uVar20 = (int)uVar25 + 1;
            printf(pcVar11,uVar25,uVar12);
            uVar21 = (ulong)uVar20;
            piVar30 = piVar24;
          } while (uVar20 != uVar7);
          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar25 + 1));
        }
        putc(10,stdout);
        pcVar11 = (char *)dcgettext(0,"TU table:\n",5);
        printf(pcVar11);
        if (uVar8 != 0) {
          uVar10 = (ulong)local_88;
          uVar21 = 0;
          piVar30 = piVar29;
          while( true ) {
            piVar24 = (int *)((long)piVar30 + uVar10);
            uVar7 = local_88;
            if ((piVar24 < local_c8) ||
               ((uVar12 = 0, (int *)((long)piVar24 - uVar10) < local_c8 &&
                (uVar7 = iVar3 - (int)piVar30, uVar7 - 1 < 8)))) {
              uVar12 = (*DAT_00159e20)(piVar30,uVar7);
            }
            pcVar11 = (char *)dcgettext(0,"[%3u] 0x%lx\n",5);
            printf(pcVar11,uVar21,uVar12);
            uVar7 = (int)uVar21 + 1;
            if (uVar7 == uVar8) break;
            uVar21 = (ulong)uVar7;
            piVar30 = piVar24;
          }
          piVar29 = (int *)((long)piVar29 + uVar10 * (uVar21 + 1));
        }
        putc(10,stdout);
        pcVar11 = (char *)dcgettext(0,"Foreign TU table:\n",5);
        printf(pcVar11);
        if ((uint)local_98 != 0) {
          uVar21 = 0;
          piVar30 = piVar29;
          do {
            if (piVar30 + 2 < local_c8) {
              lVar22 = 8;
LAB_00118ee3:
              uVar12 = (*DAT_00159e20)(piVar30,lVar22);
            }
            else {
              uVar12 = 0;
              if ((piVar30 < local_c8) &&
                 (lVar22 = (long)local_c8 - (long)piVar30, (int)lVar22 - 1U < 8)) goto LAB_00118ee3;
            }
            pcVar11 = (char *)dcgettext(0,"[%3u] ",5);
            printf(pcVar11,uVar21);
            FUN_0010ee90(uVar12,8);
            putc(10,stdout);
            uVar7 = (int)uVar21 + 1;
            if (uVar7 == (uint)local_98) goto LAB_00118eee;
            uVar21 = (ulong)uVar7;
            piVar30 = piVar30 + 2;
          } while( true );
        }
        goto LAB_00118ef8;
      }
      if ((piVar30 < local_c8) && ((int)uVar21 - 1U < 8)) {
        uVar10 = uVar21 & 0xffffffff;
        goto LAB_00118af5;
      }
      pcVar11 = (char *)dcgettext(0,"Version %ld\n",5);
      printf(pcVar11,0);
LAB_00118a22:
      uVar12 = dcgettext(0,"Only DWARF version 5 .debug_names is currently supported.\n",5);
      warn(uVar12);
      uVar12 = 0;
    }
  }
  else {
    uVar12 = 1;
  }
  return uVar12;
LAB_00118eee:
  piVar29 = piVar29 + uVar21 * 2 + 2;
LAB_00118ef8:
  putc(10,stdout);
  puVar18 = (uint *)(local_90 + (long)piVar29);
  lVar22 = local_b0 + local_a8;
  lVar27 = (long)puVar18 + local_b0 + lVar22;
  piVar30 = (int *)(local_c0 + lVar27);
  if (local_c8 < piVar30) {
    lVar22 = *(long *)(param_1 + 0x20);
    uVar12 = dcgettext(0,
                       "Entry pool offset (0x%lx) exceeds unit size 0x%lx for unit 0x%lx in the debug_names\n"
                       ,5);
    warn(uVar12,(long)piVar30 - lVar22,(long)local_c8 - lVar22,(long)piVar2 - lVar22);
    return 0;
  }
  uVar21 = 0;
  if (local_b8 != 0) {
    uVar21 = 0;
    piVar24 = piVar29 + local_b8;
    do {
      uVar21 = (uVar21 + 1) - (ulong)(*piVar29 == 0);
      piVar29 = piVar29 + 1;
    } while (piVar24 != piVar29);
  }
  uVar10 = 0;
  lVar26 = 0;
  pcVar11 = (char *)dcngettext(0,"Used %zu of %lu bucket.\n","Used %zu of %lu buckets.\n",local_b8);
  printf(pcVar11,uVar21,local_b8);
  if (local_d0 != 0) {
    uVar25 = 0;
    lVar26 = 0;
    uVar10 = 0;
    uVar7 = *puVar18;
    puVar19 = puVar18;
    while (puVar19 = puVar19 + 1, puVar18 + local_d0 != puVar19) {
      uVar8 = *puVar19;
      if (uVar7 % local_84 == uVar8 % local_84) {
        uVar25 = uVar25 + 1;
        lVar26 = lVar26 + 1;
        uVar7 = uVar8;
        if (uVar10 < uVar25) {
          uVar10 = uVar25;
        }
      }
      else {
        uVar25 = 0;
        uVar7 = uVar8;
      }
    }
    uVar21 = uVar21 + lVar26;
  }
  pcVar11 = (char *)dcgettext(0,
                              "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"
                              ,5);
  printf(pcVar11,local_d0,lVar26,uVar10);
  if (local_d0 != uVar21) {
                    /* WARNING: Subroutine does not return */
    __assert_fail("name_count == buckets_filled + hash_clash_count","../../binutils/dwarf.c",0x216a,
                  "display_debug_names");
  }
  local_d0 = 0;
  uVar21 = 0;
  __ptr = (long *)0x0;
  while( true ) {
    lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);
    lVar27 = lVar27 + (ulong)local_3c[0];
    if (lVar26 == 0) break;
    if (uVar21 == local_d0) {
      local_d0 = uVar21 * 2;
      if (local_d0 < 0x100) {
        local_d0 = 0x100;
      }
      __ptr = (long *)xrealloc(__ptr,local_d0 << 4);
    }
    if (local_d0 <= uVar21) {
                    /* WARNING: Subroutine does not return */
      __assert_fail("abbrev_lookup_used < abbrev_lookup_allocated","../../binutils/dwarf.c",0x2186,
                    "display_debug_names");
    }
    plVar17 = __ptr + uVar21 * 2;
    if (__ptr < plVar17) {
      lVar16 = *__ptr;
      plVar15 = __ptr;
      while (lVar26 != lVar16) {
        plVar15 = plVar15 + 2;
        if (plVar17 <= plVar15) goto LAB_001190c6;
        lVar16 = *plVar15;
      }
      lVar16 = *(long *)(param_1 + 0x20);
      uVar12 = dcgettext(0,"Duplicate abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);
      warn(uVar12,lVar26,(long)piVar2 - lVar16);
    }
LAB_001190c6:
    plVar17[1] = lVar27;
    *plVar17 = lVar26;
    uVar21 = uVar21 + 1;
    FUN_001114f0(lVar27,local_3c,0,piVar30);
    lVar27 = lVar27 + (ulong)local_3c[0];
    do {
      lVar26 = FUN_001114f0(lVar27,local_3c,0,piVar30);
      uVar10 = (ulong)local_3c[0];
      lVar16 = FUN_001114f0(lVar27 + uVar10);
      lVar27 = lVar27 + uVar10 + (ulong)local_3c[0];
    } while (lVar16 != 0 || lVar26 != 0);
  }
  pcVar11 = (char *)dcgettext(0,"\nSymbol table:\n",5);
  printf(pcVar11);
  if ((uint)local_a0 != 0) {
    local_90 = 0;
    local_84 = 0;
    uVar7 = (uint)local_a0 - 1;
    do {
      uVar10 = (ulong)local_84;
      lVar27 = uVar10 + local_88;
      piVar29 = (int *)((long)puVar18 + uVar10 + local_a8);
      uVar8 = local_88;
      if (((int *)((long)puVar18 + lVar27 + local_a8) < local_c8) ||
         ((uVar12 = 0, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))) {
        uVar12 = (*DAT_00159e20)(piVar29,uVar8);
      }
      piVar29 = (int *)((long)puVar18 + uVar10 + lVar22);
      uVar8 = local_88;
      if (((int *)((long)puVar18 + lVar27 + lVar22) < local_c8) ||
         ((local_98 = piVar30, piVar29 < local_c8 && (uVar8 = iVar3 - (int)piVar29, uVar8 - 1 < 8)))
         ) {
        lVar27 = (*DAT_00159e20)(piVar29,uVar8);
        local_98 = (int *)(lVar27 + (long)piVar30);
      }
      uVar12 = FUN_00110250(uVar12);
      printf("[%3u] #%08x %s:",local_90 & 0xffffffff,(ulong)puVar18[local_90],uVar12);
      uVar8 = 0xfffffffe;
      local_a0 = -1;
      piVar29 = local_98;
      while( true ) {
        while (lVar27 = FUN_001114f0(piVar29,local_3c,0,local_c8), uVar8 == 0xffffffff) {
          piVar29 = local_98;
          local_a0 = lVar27;
          uVar8 = 0;
        }
        if (lVar27 == 0) goto LAB_001193b3;
        uVar10 = (ulong)local_3c[0];
        if (-1 < (int)uVar8) {
          if ((uVar8 != 0) || (puVar23 = &DAT_0013d6b7, local_a0 != 0)) {
            puVar23 = &DAT_00142aab;
          }
          printf("%s<%lu>",puVar23,lVar27);
        }
        if (__ptr + uVar21 * 2 <= __ptr) break;
        lVar26 = *__ptr;
        plVar17 = __ptr;
        while (lVar27 != lVar26) {
          plVar17 = plVar17 + 2;
          if (__ptr + uVar21 * 2 <= plVar17) goto LAB_00119382;
          lVar26 = *plVar17;
        }
        lVar27 = plVar17[1];
        uVar12 = FUN_001114f0(lVar27,local_3c,0,piVar30);
        lVar27 = lVar27 + (ulong)local_3c[0];
        if (-1 < (int)uVar8) {
          uVar12 = FUN_001103f0(uVar12);
          printf(" %s",uVar12);
        }
        piVar29 = (int *)((long)piVar29 + uVar10);
        while( true ) {
          uVar10 = FUN_001114f0(lVar27,local_3c,0,piVar30);
          uVar25 = (ulong)local_3c[0];
          lVar26 = FUN_001114f0(lVar27 + uVar25);
          lVar27 = lVar27 + uVar25 + (ulong)local_3c[0];
          if (lVar26 == 0 && uVar10 == 0) break;
          if (-1 < (int)uVar8) {
            puVar23 = (undefined *)FUN_0013b9f0(uVar10 & 0xffffffff);
            if (puVar23 == (undefined *)0x0) {
              pcVar11 = (char *)dcgettext(0,"Unknown IDX value: %lx",5);
              snprintf(&DAT_001574a0,100,pcVar11,uVar10);
              puVar23 = &DAT_001574a0;
            }
            printf(" %s",puVar23);
          }
          piVar29 = (int *)FUN_00114210(0,lVar26,0,piVar29,local_c8,0,0,(ulong)local_88,5,0,
                                        uVar8 >> 0x1f,0,0,0x3d);
        }
        uVar8 = uVar8 + 1;
      }
LAB_00119382:
      lVar26 = *(long *)(param_1 + 0x20);
      uVar12 = dcgettext(0,"Undefined abbreviation tag %lu in unit 0x%lx in the debug_names\n",5);
      warn(uVar12,lVar27,(long)piVar2 - lVar26);
LAB_001193b3:
      if ((int)uVar8 < 1) {
        pcVar11 = (char *)dcgettext(0," <no entries>",5);
        printf(pcVar11);
      }
      putc(10,stdout);
      local_84 = local_84 + local_88;
      bVar31 = local_90 != uVar7;
      local_90 = local_90 + 1;
    } while (bVar31);
  }
  free(__ptr);
  piVar2 = local_c8;
  goto joined_r0x0011898e;
}

