
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

int __regparm3 process_cu_tu_index(dwarf_section *section,int do_display)

{
  dwarf_section *pdVar1;
  elf_vma *peVar2;
  uint *puVar3;
  uint uVar4;
  _func_elf_vma_uchar_ptr_int *p_Var5;
  cu_tu_set *pcVar6;
  cu_tu_set *pcVar7;
  char *pcVar8;
  undefined4 uVar9;
  char *pcVar10;
  dwarf_section *section_1;
  dwarf_section *extraout_ECX;
  dwarf_section *pdVar11;
  dwarf_section *extraout_ECX_00;
  dwarf_section *pdVar12;
  int iVar13;
  elf_vma eVar25;
  elf_vma eVar26;
  elf_vma eVar27;
  char **extraout_ECX_01;
  char **ppcVar14;
  int iVar15;
  size_t *psVar16;
  uint uVar17;
  undefined1 auVar18 [4];
  char **ppcVar19;
  byte *pbVar20;
  bool bVar21;
  bool bVar22;
  byte bVar23;
  elf_vma *low;
  undefined1 *in_stack_ffffff30;
  undefined1 *puVar24;
  cu_tu_set *local_bc;
  undefined1 local_b8 [4];
  undefined1 local_b4 [4];
  undefined1 local_b0 [4];
  undefined8 local_ac;
  cu_tu_set *local_a4;
  elf_vma local_98;
  cu_tu_set *local_8c;
  dwarf_section *local_88;
  cu_tu_set *local_78;
  dwarf_vma signature_high;
  dwarf_vma signature_low;
  char buf [64];
  
  bVar23 = 0;
  pdVar12 = (dwarf_section *)section->start;
  pcVar7 = *(cu_tu_set **)&section->size;
  iVar13 = *(int *)((int)&section->size + 4);
  if (pdVar12 == (dwarf_section *)0x0) {
    pdVar12 = (dwarf_section *)section->name;
    pcVar8 = "Section %s is empty\n";
  }
  else {
    if (iVar13 != 0 || (uint)-iVar13 < (uint)((cu_tu_set *)0x17 < pcVar7)) {
      local_b0 = (undefined1  [4])&pdVar12->name;
      pdVar1 = (dwarf_section *)((int)pcVar7->section_offsets + (int)&pdVar12[-1].num_relocs);
      ppcVar14 = &pdVar12->compressed_name;
      if (ppcVar14 < pdVar1) {
        pcVar6 = (cu_tu_set *)0x4;
      }
      else if ((pdVar1 <= pdVar12) ||
              (pcVar6 = pcVar7,
              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU))) {
        local_ac._0_4_ = 0;
        local_b8 = (undefined1  [4])0x0;
        goto LAB_000313d0;
      }
      local_bc = (cu_tu_set *)&byte_get;
      local_ac._0_4_ = (*byte_get)((uchar *)pdVar12,(int)pcVar6);
      if ((uint)(elf_vma)local_ac < 2) {
        local_b8 = (undefined1  [4])0x0;
        goto LAB_000313d0;
      }
      if ((uint)local_b0 < pdVar1) {
        psVar16 = (size_t *)0x4;
        goto LAB_0003153d;
      }
      if ((ppcVar14 < pdVar1) &&
         ((undefined1 *)((int)pcVar7[-1].section_sizes + 0x1bU) < (undefined1 *)0x8))
      goto LAB_000323ac;
      pdVar11 = (dwarf_section *)&pdVar12->filename;
      local_b8 = (undefined1  [4])0x0;
      puVar24 = in_stack_ffffff30;
      if (pdVar11 < pdVar1) goto LAB_000313e1;
LAB_00031338:
      puVar24 = in_stack_ffffff30;
      local_b0 = (undefined1  [4])&pdVar12->start;
      if ((uint)local_b0 < pdVar1) {
        local_98._0_4_ = 0;
        psVar16 = (size_t *)0x4;
        goto LAB_0003148f;
      }
      local_98._0_4_ = 0;
      section_1 = pdVar11;
LAB_0003134f:
      if (pdVar12 <= (uint)local_b0) {
        local_88 = (dwarf_section *)local_b0;
        local_ac._4_4_ = (dwarf_section *)local_b0;
        local_bc = (cu_tu_set *)0x0;
        do {
          if (do_display != 0) {
            puVar24 = (undefined1 *)0x3159f;
            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);
            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);
            printf(pcVar8,(undefined4)(elf_vma)local_ac);
            if (1 < (uint)(elf_vma)local_ac) {
              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);
              printf(pcVar8,local_b8);
            }
            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);
            printf(pcVar8,(undefined4)(elf_vma)local_98);
            pcVar7 = (cu_tu_set *)0x0;
            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);
            printf(pcVar8,local_bc);
            section_1 = extraout_ECX_00;
          }
          if (pdVar1 < local_ac._4_4_) {
            pdVar12 = (dwarf_section *)section->name;
            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);
            goto LAB_000314f3;
          }
          if ((elf_vma)local_ac != 1) {
            if ((elf_vma)local_ac != 2) {
              if (do_display == 0) {
                return 1;
              }
              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);
              printf(pcVar8,(undefined4)(elf_vma)local_ac);
              goto LAB_000316b0;
            }
            uVar4 = (int)local_b8 * 4;
            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;
            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {
              uVar17 = uVar4 + 3;
              if (-1 < (int)uVar4) {
                uVar17 = uVar4;
              }
              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {
                pdVar12 = (dwarf_section *)section->name;
                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);
                bVar21 = pdVar1 < pdVar11;
                bVar22 = pdVar1 == pdVar11;
                if (!bVar21) {
                  iVar13 = 0x10;
                  pbVar20 = (byte *)".debug_tu_index";
                  goto code_r0x00031991;
                }
                pcVar8 = "Section %s too small for offset and size tables\n";
                goto LAB_0003156a;
              }
            }
            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);
            warn(pcVar8,local_b8);
            return 0;
          }
          if (do_display != 0) {
            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;
LAB_00031644:
            local_b8 = (undefined1  [4])0x0;
            goto LAB_0003165a;
          }
          iVar15 = (int)pdVar1 - (int)local_ac._4_4_;
          iVar13 = iVar15 + 3;
          if (-1 < iVar15) {
            iVar13 = iVar15;
          }
          shndx_pool_size = iVar13 >> 2;
          if (shndx_pool == (uint *)0x0) {
            shndx_pool_used = 0;
            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);
LAB_00031d8a:
            if (local_bc == (cu_tu_set *)0x0) {
              return 1;
            }
            goto LAB_00031644;
          }
          shndx_pool_size = shndx_pool_size + shndx_pool_used;
          if (shndx_pool_size < (void *)0x3fffffff) {
            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);
            goto LAB_00031d8a;
          }
          in_stack_ffffff30 = (undefined1 *)0x323ac;
          xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1);
          pdVar12 = (dwarf_section *)0x0;
          ppcVar14 = extraout_ECX_01;
LAB_000323ac:
          psVar16 = pcVar7[-1].section_sizes + 7;
LAB_0003153d:
          local_b8 = (undefined1  [4])
                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)
                               ((uchar *)ppcVar14,(int)psVar16);
LAB_000313d0:
          pdVar11 = (dwarf_section *)&pdVar12->filename;
          puVar24 = in_stack_ffffff30;
          if (pdVar11 < pdVar1) {
LAB_000313e1:
            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);
            local_b0 = (undefined1  [4])&pdVar12->start;
            if ((uint)local_b0 < pdVar1) {
              psVar16 = (size_t *)0x4;
            }
            else {
              section_1 = pdVar11;
              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))
              goto LAB_0003134f;
              psVar16 = pcVar7[-1].section_sizes + 5;
            }
          }
          else {
            if ((pdVar1 <= (uint)local_b0) ||
               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),
               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;
            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);
            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);
            local_b0 = (undefined1  [4])&pdVar12->start;
            section_1 = extraout_ECX;
            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;
            psVar16 = (size_t *)0x4;
          }
LAB_0003148f:
          pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);
          pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2);
          section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7);
          local_bc = pcVar7;
          if (((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||
             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))
          goto LAB_000314c9;
          local_88 = (dwarf_section *)local_b0;
          local_b0 = (undefined1  [4])pdVar11;
          local_ac._4_4_ = section_1;
        } while( true );
      }
      local_bc = (cu_tu_set *)0x0;
LAB_000314c9:
      pdVar12 = (dwarf_section *)section->name;
      pcVar8 = (char *)dcngettext(0,"Section %s is too small for %d slot\n",
                                  "Section %s is too small for %d slots\n",local_bc,5);
      goto LAB_000314f3;
    }
    pdVar12 = (dwarf_section *)section->name;
    pcVar8 = "Section %s is too small to contain a CU/TU header\n";
  }
LAB_0003156a:
  local_bc = (cu_tu_set *)0x5;
  pcVar8 = (char *)dcgettext(0,pcVar8,5);
LAB_000314f3:
  warn(pcVar8,pdVar12,local_bc);
  return 0;
LAB_0003165a:
  if (pdVar1 < &local_88->name) {
    signature_high._0_4_ = (char *)0x0;
    signature_high._4_4_ = 0;
    signature_low._0_4_ = 0;
    signature_low._4_4_ = 0;
    goto LAB_0003168c;
  }
  low = &signature_low;
  byte_get_64((uchar *)local_88,&signature_high,low);
  if ((signature_high._4_4_ != 0 || (char *)signature_high != (char *)0x0) ||
     (signature_low._4_4_ != 0 || (int)signature_low != 0)) {
    iVar13 = 4;
    if ((&((dwarf_section *)local_b0)->compressed_name < pdVar1) ||
       ((pdVar12 = local_ac._4_4_, (uint)local_b0 < pdVar1 &&
        (iVar13 = (int)pdVar1 - (int)local_b0, iVar13 - 1U < 8)))) {
      eVar25._0_4_ = (*byte_get)((uchar *)local_b0,iVar13);
      pdVar12 = (dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25);
      if ((dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25) <
          local_ac._4_4_) {
        pcVar8 = (char *)dcgettext(0,"Section index pool located before start of section\n",5);
        warn(pcVar8);
        return 0;
      }
    }
    if (do_display != 0) {
      low = (elf_vma *)
            dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),CONCAT44(puVar24,buf),
                           (char *)signature_high,signature_high._4_4_);
      pcVar8 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);
      printf(pcVar8,local_b8,low);
    }
    if (pdVar12 < pdVar1) {
      do {
        ppcVar14 = &pdVar12->compressed_name;
        if (ppcVar14 < pdVar1) {
          iVar13 = 4;
        }
        else {
          iVar13 = (int)pdVar1 - (int)pdVar12;
          if (7 < iVar13 - 1U) goto LAB_000317d8;
        }
        eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);
        if ((elf_vma)eVar25 == 0) goto LAB_000317d8;
        if (do_display == 0) {
          if (shndx_pool_used < shndx_pool_size) {
            peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used);
            shndx_pool_used = shndx_pool_used + 1;
                    /* WARNING: Store size is inaccurate */
            *peVar2 = (elf_vma)eVar25;
          }
          else {
            low = (elf_vma *)0x5;
            pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");
            error(pcVar8);
          }
        }
        else {
          printf(" %d",(undefined4)(elf_vma)eVar25,low);
        }
        pdVar12 = (dwarf_section *)ppcVar14;
        if (pdVar1 <= ppcVar14) break;
      } while( true );
    }
    pdVar12 = (dwarf_section *)section->name;
    pcVar8 = "Section %s too small for shndx pool\n";
    goto LAB_0003156a;
  }
LAB_0003168c:
  local_b8 = (undefined1  [4])((int)(uint64_t *)local_b8 + 1);
  local_88 = (dwarf_section *)&local_88->name;
  local_b0 = (undefined1  [4])&((dwarf_section *)local_b0)->compressed_name;
  if (local_bc <= (uint)local_b8) goto LAB_000316a3;
  goto LAB_0003165a;
LAB_000317d8:
  if (do_display == 0) {
    if (shndx_pool_used < shndx_pool_size) {
      puVar3 = shndx_pool + shndx_pool_used;
      shndx_pool_used = shndx_pool_used + 1;
      *puVar3 = 0;
    }
    else {
      pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);
      error(pcVar8);
    }
  }
  else {
    putchar(10);
  }
  goto LAB_0003168c;
  while( true ) {
    iVar13 = iVar13 + -1;
    bVar21 = *(byte *)&pdVar12->uncompressed_name < *pbVar20;
    bVar22 = *(byte *)&pdVar12->uncompressed_name == *pbVar20;
    pdVar12 = (dwarf_section *)((int)pdVar12 + (uint)bVar23 * -2 + 1);
    pbVar20 = pbVar20 + (uint)bVar23 * -2 + 1;
    if (!bVar22) break;
code_r0x00031991:
    if (iVar13 == 0) break;
  }
  bVar22 = !bVar21 && !bVar22;
  if (do_display == 0) {
    if (bVar22 == bVar21) {
      tu_count = (int)(elf_vma)local_98;
      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);
      tu_sets = local_78;
    }
    else {
      cu_count = (int)(elf_vma)local_98;
      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);
      cu_sets = local_78;
    }
    if (local_bc != (cu_tu_set *)0x0) {
LAB_000319e5:
      local_a4 = (cu_tu_set *)0x0;
      pdVar12 = local_88;
      auVar18 = local_b0;
      do {
        ppcVar19 = &pdVar12->name;
        if (pdVar1 < ppcVar19) {
          signature_high._0_4_ = (char *)0x0;
          signature_high._4_4_ = 0;
          signature_low._0_4_ = 0;
          signature_low._4_4_ = 0;
        }
        else {
          byte_get_64((uchar *)pdVar12,&signature_high,&signature_low);
        }
        if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {
          iVar13 = 4;
LAB_00031a7a:
          eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);
          if ((elf_vma)eVar25 != 0) {
            if ((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25) {
              pcVar8 = (char *)dcgettext(0,
                                         "Row index (%u) is larger than number of used entries (%u)\n"
                                         ,5);
              local_b8 = (undefined1  [4])(elf_vma)local_98;
              goto LAB_00031dd2;
            }
            if (do_display == 0) {
              if (pdVar1 <= ppcVar19) {
                pcVar8 = "Signature (%p) extends beyond end of space in section\n";
                goto LAB_0003156a;
              }
              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;
              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);
              *(char **)&local_8c->signature = pdVar12->uncompressed_name;
              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;
              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;
              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);
              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;
              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;
            }
            else {
              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;
              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);
              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {
LAB_00031db8:
                pcVar8 = (char *)dcgettext(0,
                                           "Row index (%u) * num columns (%u) > space remaining in section\n"
                                           ,5);
LAB_00031dd2:
                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);
                return 0;
              }
              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),
                                      CONCAT44(puVar24,buf),(char *)signature_high,
                                      signature_high._4_4_);
              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);
              printf(pcVar10,local_a4,pcVar8);
              if (local_b8 != (undefined1  [4])0x0) {
                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);
LAB_00031af3:
                local_b4 = (undefined1  [4])0x0;
                pdVar11 = local_ac._4_4_;
                do {
                  local_b4 = (undefined1  [4])((int)local_b4 + 1);
                  if (&pdVar12->compressed_name < pdVar1) {
                    iVar13 = 4;
LAB_00031bd5:
                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);
                    if (do_display == 0) goto LAB_00031b3e;
LAB_00031bf1:
                    printf(" %8d",(undefined4)(elf_vma)eVar25);
                  }
                  else {
                    eVar25._0_4_ = 0;
                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)
                       ) goto LAB_00031bd5;
                    if (do_display != 0) goto LAB_00031bf1;
LAB_00031b3e:
                    if (&pdVar11->compressed_name < pdVar1) {
                      iVar13 = 4;
LAB_00031c15:
                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);
                      if (7 < (uint)(elf_vma)eVar26) {
                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",
                                                   5);
                        warn(pcVar8,(undefined4)(elf_vma)eVar26);
                        goto LAB_00031b71;
                      }
                    }
                    else {
                      if ((pdVar11 < pdVar1) &&
                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;
                      eVar26._0_4_ = 0;
                    }
                    /* WARNING: Store size is inaccurate */
                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;
                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =
                         0;
                  }
LAB_00031b71:
                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;
                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;
                } while ((uint)local_b4 < (uint)local_b8);
                if (do_display == 0) goto LAB_00031a20;
              }
              putchar(10);
            }
          }
        }
        else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))
        goto LAB_00031a7a;
LAB_00031a20:
        local_a4 = (cu_tu_set *)((int)&local_a4->signature + 1);
        pdVar12 = (dwarf_section *)ppcVar19;
        auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;
      } while (local_a4 < local_bc);
      if (do_display != 0) goto LAB_00032214;
    }
    if (local_b8 != (undefined1  [4])0x0) {
LAB_00031e1e:
      eVar25._0_4_ = 0;
      pdVar12 = local_ac._4_4_;
      do {
        eVar25._0_4_ = (elf_vma)((int)(elf_vma)eVar25 + 1);
        if (&pdVar12->compressed_name < pdVar1) {
          iVar13 = 4;
LAB_00031e67:
          local_b4 = (undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13);
        }
        else {
          local_b4 = (undefined1  [4])0x0;
          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))
          goto LAB_00031e67;
        }
        if (do_display != 0) {
          puVar24 = (undefined1 *)0x31e89;
          pcVar8 = get_DW_SECT_short_name((uint)local_b4);
          printf(" %8s",pcVar8);
        }
        pdVar12 = (dwarf_section *)&pdVar12->compressed_name;
      } while ((uint)(elf_vma)eVar25 < (uint)local_b8);
      if (do_display != 0) goto LAB_0003227a;
    }
    if (local_bc == (cu_tu_set *)0x0) {
      return 1;
    }
  }
  else {
    pcVar8 = (char *)dcgettext(0,"  Offset table\n",5);
    printf(pcVar8);
    if (bVar22 == bVar21) {
      uVar9 = dcgettext(0,"signature",5);
    }
    else {
      uVar9 = dcgettext(0,"dwo_id",5);
    }
    printf("  slot  %-16s  ",uVar9);
    pdVar12 = local_ac._4_4_;
    if (local_b8 != (undefined1  [4])0x0) {
      do {
        ppcVar19 = &pdVar12->compressed_name;
        if (ppcVar19 < pdVar1) {
          iVar13 = 4;
LAB_000321db:
          eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);
        }
        else {
          eVar25._0_4_ = 0;
          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))
          goto LAB_000321db;
        }
        puVar24 = (undefined1 *)0x321b7;
        pcVar8 = get_DW_SECT_short_name((uint)(elf_vma)eVar25);
        printf(" %8s",pcVar8);
        pdVar12 = (dwarf_section *)ppcVar19;
      } while (ppcVar14 != ppcVar19);
    }
    putchar(10);
    local_78 = (cu_tu_set *)0x0;
    if (local_bc != (cu_tu_set *)0x0) goto LAB_000319e5;
    local_78 = local_bc;
LAB_00032214:
    putchar(10);
    pcVar8 = (char *)dcgettext(0,"  Size table\n",5);
    printf(pcVar8);
    if (bVar22 == bVar21) {
      uVar9 = dcgettext(0,"signature",5);
    }
    else {
      uVar9 = dcgettext(0,"dwo_id",5);
    }
    printf("  slot  %-16s  ",uVar9);
    if (local_b8 != (undefined1  [4])0x0) goto LAB_00031e1e;
LAB_0003227a:
    putchar(10);
    if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;
  }
  local_b4 = (undefined1  [4])0x0;
  auVar18 = local_b0;
  do {
    if (pdVar1 < &local_88->name) {
      signature_high._0_4_ = (char *)0x0;
      signature_high._4_4_ = 0;
      signature_low._0_4_ = 0;
      signature_low._4_4_ = 0;
    }
    else {
      byte_get_64((uchar *)local_88,&signature_high,&signature_low);
    }
    if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {
      iVar13 = 4;
LAB_00031f4a:
      eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);
      if ((elf_vma)eVar25 != 0) {
        if (do_display == 0) {
          if (local_b8 != (undefined1  [4])0x0) {
LAB_00031f85:
            local_b0 = (undefined1  [4])0x0;
            pdVar12 = (dwarf_section *)
                      ((int)ppcVar14 +
                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98);
            pdVar11 = local_ac._4_4_;
            do {
              local_b0 = (undefined1  [4])((int)local_b0 + 1);
              if (&pdVar12->compressed_name < pdVar1) {
                iVar13 = 4;
LAB_00032035:
                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);
              }
              else {
                eVar26._0_4_ = 0;
                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))
                goto LAB_00032035;
              }
              if (do_display == 0) {
                if (&pdVar11->compressed_name < pdVar1) {
                  iVar13 = 4;
LAB_00032055:
                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);
                  if (7 < (uint)(elf_vma)eVar27) {
                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);
                    warn(pcVar8,(undefined4)(elf_vma)eVar27);
                    goto LAB_00032001;
                  }
                }
                else {
                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))
                  goto LAB_00032055;
                  eVar27._0_4_ = 0;
                }
                    /* WARNING: Store size is inaccurate */
                *(elf_vma *)
                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +
                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;
              }
              else {
                printf(" %8d",(undefined4)(elf_vma)eVar26);
              }
LAB_00032001:
              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;
              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;
            } while ((uint)local_b0 < (uint)local_b8);
            if (do_display != 0) goto LAB_0003201d;
          }
        }
        else {
          pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),
                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)
          ;
          pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);
          printf(pcVar10,local_b4,pcVar8);
          if (local_b8 != (undefined1  [4])0x0) goto LAB_00031f85;
LAB_0003201d:
          putchar(10);
        }
      }
    }
    else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))
    goto LAB_00031f4a;
    local_b4 = (undefined1  [4])((int)(uint64_t *)local_b4 + 1);
    local_88 = (dwarf_section *)&local_88->name;
    auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;
  } while ((uint)local_b4 < local_bc);
LAB_000316a3:
  if (do_display == 0) {
    return 1;
  }
LAB_000316b0:
  putchar(10);
  return 1;
}



/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

undefined4 __regparm3 FUN_00031280(int param_1,int param_2)

{
  byte *pbVar1;
  uint uVar2;
  undefined4 *puVar3;
  undefined4 *puVar4;
  byte *pbVar5;
  uint uVar6;
  char *pcVar7;
  int iVar8;
  undefined4 uVar9;
  byte *extraout_ECX;
  int iVar10;
  byte *pbVar11;
  byte *pbVar12;
  uint uVar13;
  byte *pbVar14;
  byte *pbVar15;
  bool bVar16;
  bool bVar17;
  byte bVar18;
  int *piVar19;
  undefined4 *local_bc;
  undefined4 *local_b8;
  undefined4 *local_b4;
  byte *local_b0;
  uint local_ac;
  byte *local_a8;
  undefined4 *local_a4;
  uint local_98;
  undefined4 *local_8c;
  byte *local_88;
  undefined4 *local_78;
  int local_6c;
  int local_68;
  int local_64;
  int local_60;
  undefined1 local_5c [72];
  undefined4 uStack_14;
  
  bVar18 = 0;
  uStack_14 = 0x31289;
  pbVar14 = *(byte **)(param_1 + 0x10);
  puVar3 = *(undefined4 **)(param_1 + 0x1c);
  if (pbVar14 == (byte *)0x0) {
    pbVar14 = *(byte **)(param_1 + 8);
    pcVar7 = "Section %s is empty\n";
  }
  else {
    if (*(int *)(param_1 + 0x20) != 0 ||
        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {
      local_b0 = pbVar14 + 8;
      pbVar1 = pbVar14 + (int)puVar3;
      pbVar5 = pbVar14 + 4;
      if (pbVar5 < pbVar1) {
        puVar4 = (undefined4 *)0x4;
      }
      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {
        local_ac = 0;
        local_b8 = (undefined4 *)0x0;
        goto LAB_000313d0;
      }
      local_bc = &DAT_00076b4c;
      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);
      if (local_ac < 2) {
        local_b8 = (undefined4 *)0x0;
        goto LAB_000313d0;
      }
      if (local_b0 < pbVar1) {
        puVar4 = (undefined4 *)0x4;
        goto LAB_0003153d;
      }
      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;
      pbVar5 = pbVar14 + 0xc;
      local_b8 = (undefined4 *)0x0;
      if (pbVar5 < pbVar1) goto LAB_000313e1;
LAB_00031338:
      local_b0 = pbVar14 + 0x10;
      if (local_b0 < pbVar1) {
        local_98 = 0;
        puVar3 = (undefined4 *)0x4;
        goto LAB_0003148f;
      }
      local_98 = 0;
LAB_0003134f:
      if (pbVar14 <= local_b0) {
        local_88 = local_b0;
        local_a8 = local_b0;
        local_bc = (undefined4 *)0x0;
        do {
          if (param_2 != 0) {
            FUN_0001ec20();
            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);
            printf(pcVar7,local_ac);
            if (1 < local_ac) {
              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);
              printf(pcVar7,local_b8);
            }
            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);
            printf(pcVar7,local_98);
            puVar3 = (undefined4 *)0x0;
            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);
            printf(pcVar7,local_bc);
          }
          if (pbVar1 < local_a8) {
            pbVar14 = *(byte **)(param_1 + 8);
            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);
            goto LAB_000314f3;
          }
          if (local_ac != 1) {
            if (local_ac != 2) {
              if (param_2 == 0) {
                return 1;
              }
              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);
              printf(pcVar7,local_ac);
              goto LAB_000316b0;
            }
            uVar2 = (int)local_b8 * 4;
            pbVar5 = local_a8 + uVar2;
            if (!CARRY4((uint)local_a8,uVar2)) {
              uVar6 = uVar2 + 3;
              if (-1 < (int)uVar2) {
                uVar6 = uVar2;
              }
              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {
                pbVar14 = *(byte **)(param_1 + 8);
                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;
                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;
                if (!bVar16) {
                  iVar8 = 0x10;
                  pbVar15 = (byte *)".debug_tu_index";
                  goto code_r0x00031991;
                }
                pcVar7 = "Section %s too small for offset and size tables\n";
                goto LAB_0003156a;
              }
            }
            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);
            warn(uVar9,local_b8);
            return 0;
          }
          if (param_2 != 0) {
            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;
LAB_00031644:
            local_b8 = (undefined4 *)0x0;
            goto LAB_0003165a;
          }
          iVar10 = (int)pbVar1 - (int)local_a8;
          iVar8 = iVar10 + 3;
          if (-1 < iVar10) {
            iVar8 = iVar10;
          }
          DAT_00076924 = iVar8 >> 2;
          if (DAT_00076928 == 0) {
            DAT_00076920 = 0;
            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);
LAB_00031d8a:
            if (local_bc == (undefined4 *)0x0) {
              return 1;
            }
            goto LAB_00031644;
          }
          DAT_00076924 = DAT_00076924 + DAT_00076920;
          if (DAT_00076924 < 0x3fffffff) {
            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);
            goto LAB_00031d8a;
          }
          FUN_0001e980();
          pbVar14 = (byte *)0x0;
          pbVar5 = extraout_ECX;
LAB_000323ac:
          puVar4 = puVar3 + -1;
LAB_0003153d:
          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);
LAB_000313d0:
          pbVar5 = pbVar14 + 0xc;
          if (pbVar5 < pbVar1) {
LAB_000313e1:
            local_98 = (*DAT_00076b4c)(local_b0,4);
            local_b0 = pbVar14 + 0x10;
            if (local_b0 < pbVar1) {
              puVar3 = (undefined4 *)0x4;
            }
            else {
              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;
              puVar3 = puVar3 + -3;
            }
          }
          else {
            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;
            puVar3 = puVar3 + -2;
            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);
            local_b0 = pbVar14 + 0x10;
            if (pbVar1 <= local_b0) goto LAB_0003134f;
            puVar3 = (undefined4 *)0x4;
          }
LAB_0003148f:
          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);
          pbVar5 = local_b0 + (int)puVar3 * 8;
          local_a8 = pbVar5 + (int)puVar3 * 4;
          local_bc = puVar3;
          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||
             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;
          local_88 = local_b0;
          local_b0 = pbVar5;
        } while( true );
      }
      local_bc = (undefined4 *)0x0;
LAB_000314c9:
      pbVar14 = *(byte **)(param_1 + 8);
      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",
                         "Section %s is too small for %d slots\n",local_bc,5);
      goto LAB_000314f3;
    }
    pbVar14 = *(byte **)(param_1 + 8);
    pcVar7 = "Section %s is too small to contain a CU/TU header\n";
  }
LAB_0003156a:
  local_bc = (undefined4 *)0x5;
  uVar9 = dcgettext(0,pcVar7,5);
LAB_000314f3:
  warn(uVar9,pbVar14,local_bc);
  return 0;
LAB_0003165a:
  if (pbVar1 < local_88 + 8) {
    local_6c = 0;
    local_68 = 0;
    local_64 = 0;
    local_60 = 0;
    goto LAB_0003168c;
  }
  piVar19 = &local_64;
  FUN_000490b0(local_88,&local_6c,piVar19);
  if ((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)) {
    iVar8 = 4;
    if ((local_b0 + 4 < pbVar1) ||
       ((pbVar14 = local_a8, local_b0 < pbVar1 &&
        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {
      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);
      pbVar14 = local_a8 + iVar8 * 4;
      if (local_a8 + iVar8 * 4 < local_a8) {
        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);
        warn(uVar9);
        return 0;
      }
    }
    if (param_2 != 0) {
      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);
      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);
      printf(pcVar7,local_b8,piVar19);
    }
    if (pbVar14 < pbVar1) {
      do {
        pbVar5 = pbVar14 + 4;
        if (pbVar5 < pbVar1) {
          iVar8 = 4;
        }
        else {
          iVar8 = (int)pbVar1 - (int)pbVar14;
          if (7 < iVar8 - 1U) goto LAB_000317d8;
        }
        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);
        if (iVar8 == 0) goto LAB_000317d8;
        if (param_2 == 0) {
          if (DAT_00076920 < DAT_00076924) {
            iVar10 = DAT_00076920 * 4;
            DAT_00076920 = DAT_00076920 + 1;
            *(int *)(DAT_00076928 + iVar10) = iVar8;
          }
          else {
            piVar19 = (int *)0x5;
            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");
            error(uVar9);
          }
        }
        else {
          printf(" %d",iVar8,piVar19);
        }
        pbVar14 = pbVar5;
        if (pbVar1 <= pbVar5) break;
      } while( true );
    }
    pbVar14 = *(byte **)(param_1 + 8);
    pcVar7 = "Section %s too small for shndx pool\n";
    goto LAB_0003156a;
  }
LAB_0003168c:
  local_b8 = (undefined4 *)((int)local_b8 + 1);
  local_88 = local_88 + 8;
  local_b0 = local_b0 + 4;
  if (local_bc <= local_b8) goto LAB_000316a3;
  goto LAB_0003165a;
LAB_000317d8:
  if (param_2 == 0) {
    if (DAT_00076920 < DAT_00076924) {
      iVar8 = DAT_00076920 * 4;
      DAT_00076920 = DAT_00076920 + 1;
      *(undefined4 *)(DAT_00076928 + iVar8) = 0;
    }
    else {
      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);
      error(uVar9);
    }
  }
  else {
    putchar(10);
  }
  goto LAB_0003168c;
  while( true ) {
    iVar8 = iVar8 + -1;
    bVar16 = *pbVar14 < *pbVar15;
    bVar17 = *pbVar14 == *pbVar15;
    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;
    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;
    if (!bVar17) break;
code_r0x00031991:
    if (iVar8 == 0) break;
  }
  bVar17 = !bVar16 && !bVar17;
  if (param_2 == 0) {
    if (bVar17 == bVar16) {
      DAT_00076910 = local_98;
      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);
      DAT_00076908 = local_78;
    }
    else {
      DAT_00076914 = local_98;
      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);
      DAT_0007690c = local_78;
    }
    if (local_bc != (undefined4 *)0x0) {
LAB_000319e5:
      local_a4 = (undefined4 *)0x0;
      pbVar14 = local_88;
      pbVar15 = local_b0;
      do {
        pbVar12 = pbVar14 + 8;
        if (pbVar1 < pbVar12) {
          local_6c = 0;
          local_68 = 0;
          local_64 = 0;
          local_60 = 0;
        }
        else {
          FUN_000490b0(pbVar14,&local_6c,&local_64);
        }
        if (pbVar15 + 4 < pbVar1) {
          iVar8 = 4;
LAB_00031a7a:
          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);
          if (uVar6 != 0) {
            if (local_98 < uVar6) {
              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);
              local_b8 = (undefined4 *)local_98;
              goto LAB_00031dd2;
            }
            if (param_2 == 0) {
              if (pbVar1 <= pbVar12) {
                pcVar7 = "Signature (%p) extends beyond end of space in section\n";
                goto LAB_0003156a;
              }
              uVar9 = *(undefined4 *)(pbVar14 + 4);
              local_8c = local_78 + uVar6 * 0x1a + -0x1a;
              *local_8c = *(undefined4 *)pbVar14;
              local_8c[1] = uVar9;
              uVar13 = (uVar6 + 0x3fffffff) * uVar2;
              pbVar14 = pbVar5 + uVar13;
              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;
              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;
            }
            else {
              uVar13 = (uVar6 + 0x3fffffff) * uVar2;
              pbVar14 = pbVar5 + uVar13;
              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {
LAB_00031db8:
                uVar9 = dcgettext(0,
                                  "Row index (%u) * num columns (%u) > space remaining in section\n"
                                  ,5);
LAB_00031dd2:
                warn(uVar9,uVar6,local_b8);
                return 0;
              }
              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);
              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);
              printf(pcVar7,local_a4,uVar9);
              if (local_b8 != (undefined4 *)0x0) {
                local_8c = local_78 + uVar6 * 0x1a + -0x1a;
LAB_00031af3:
                local_b4 = (undefined4 *)0x0;
                pbVar11 = local_a8;
                do {
                  local_b4 = (undefined4 *)((int)local_b4 + 1);
                  if (pbVar14 + 4 < pbVar1) {
                    iVar8 = 4;
LAB_00031bd5:
                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);
                    if (param_2 == 0) goto LAB_00031b3e;
LAB_00031bf1:
                    printf(" %8d",uVar9);
                  }
                  else {
                    uVar9 = 0;
                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))
                    goto LAB_00031bd5;
                    if (param_2 != 0) goto LAB_00031bf1;
LAB_00031b3e:
                    if (pbVar11 + 4 < pbVar1) {
                      iVar8 = 4;
LAB_00031c15:
                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);
                      if (7 < uVar6) {
                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);
                        warn(uVar9,uVar6);
                        goto LAB_00031b71;
                      }
                    }
                    else {
                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)
                         ) goto LAB_00031c15;
                      uVar6 = 0;
                    }
                    local_8c[uVar6 * 2 + 2] = uVar9;
                    local_8c[uVar6 * 2 + 3] = 0;
                  }
LAB_00031b71:
                  pbVar11 = pbVar11 + 4;
                  pbVar14 = pbVar14 + 4;
                } while (local_b4 < local_b8);
                if (param_2 == 0) goto LAB_00031a20;
              }
              putchar(10);
            }
          }
        }
        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))
        goto LAB_00031a7a;
LAB_00031a20:
        local_a4 = (undefined4 *)((int)local_a4 + 1);
        pbVar14 = pbVar12;
        pbVar15 = pbVar15 + 4;
      } while (local_a4 < local_bc);
      if (param_2 != 0) goto LAB_00032214;
    }
    if (local_b8 != (undefined4 *)0x0) {
LAB_00031e1e:
      uVar6 = 0;
      pbVar14 = local_a8;
      do {
        uVar6 = uVar6 + 1;
        if (pbVar14 + 4 < pbVar1) {
          iVar8 = 4;
LAB_00031e67:
          (*DAT_00076b4c)(pbVar14,iVar8);
        }
        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))
        goto LAB_00031e67;
        if (param_2 != 0) {
          uVar9 = FUN_0001e440();
          printf(" %8s",uVar9);
        }
        pbVar14 = pbVar14 + 4;
      } while (uVar6 < local_b8);
      if (param_2 != 0) goto LAB_0003227a;
    }
    if (local_bc == (undefined4 *)0x0) {
      return 1;
    }
  }
  else {
    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);
    printf(pcVar7);
    if (bVar17 == bVar16) {
      uVar9 = dcgettext(0,"signature",5);
    }
    else {
      uVar9 = dcgettext(0,"dwo_id",5);
    }
    printf("  slot  %-16s  ",uVar9);
    pbVar14 = local_a8;
    if (local_b8 != (undefined4 *)0x0) {
      do {
        pbVar15 = pbVar14 + 4;
        if (pbVar15 < pbVar1) {
          iVar8 = 4;
LAB_000321db:
          (*DAT_00076b4c)(pbVar14,iVar8);
        }
        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))
        goto LAB_000321db;
        uVar9 = FUN_0001e440();
        printf(" %8s",uVar9);
        pbVar14 = pbVar15;
      } while (pbVar5 != pbVar15);
    }
    putchar(10);
    local_78 = (undefined4 *)0x0;
    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;
    local_78 = local_bc;
LAB_00032214:
    putchar(10);
    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);
    printf(pcVar7);
    if (bVar17 == bVar16) {
      uVar9 = dcgettext(0,"signature",5);
    }
    else {
      uVar9 = dcgettext(0,"dwo_id",5);
    }
    printf("  slot  %-16s  ",uVar9);
    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;
LAB_0003227a:
    putchar(10);
    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;
  }
  local_b4 = (undefined4 *)0x0;
  pbVar14 = local_b0;
  do {
    if (pbVar1 < local_88 + 8) {
      local_6c = 0;
      local_68 = 0;
      local_64 = 0;
      local_60 = 0;
    }
    else {
      FUN_000490b0(local_88,&local_6c,&local_64);
    }
    if (pbVar14 + 4 < pbVar1) {
      iVar8 = 4;
LAB_00031f4a:
      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);
      if (iVar8 != 0) {
        if (param_2 == 0) {
          if (local_b8 != (undefined4 *)0x0) {
LAB_00031f85:
            local_b0 = (byte *)0x0;
            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;
            pbVar12 = local_a8;
            do {
              local_b0 = (byte *)((int)local_b0 + 1);
              if (pbVar15 + 4 < pbVar1) {
                iVar10 = 4;
LAB_00032035:
                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);
              }
              else {
                uVar9 = 0;
                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))
                goto LAB_00032035;
              }
              if (param_2 == 0) {
                if (pbVar12 + 4 < pbVar1) {
                  iVar10 = 4;
LAB_00032055:
                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);
                  if (7 < uVar6) {
                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);
                    warn(uVar9,uVar6);
                    goto LAB_00032001;
                  }
                }
                else {
                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))
                  goto LAB_00032055;
                  uVar6 = 0;
                }
                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;
              }
              else {
                printf(" %8d",uVar9);
              }
LAB_00032001:
              pbVar12 = pbVar12 + 4;
              pbVar15 = pbVar15 + 4;
            } while (local_b0 < local_b8);
            if (param_2 != 0) goto LAB_0003201d;
          }
        }
        else {
          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);
          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);
          printf(pcVar7,local_b4,uVar9);
          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;
LAB_0003201d:
          putchar(10);
        }
      }
    }
    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))
    goto LAB_00031f4a;
    local_b4 = (undefined4 *)((int)local_b4 + 1);
    local_88 = local_88 + 8;
    pbVar14 = pbVar14 + 4;
  } while (local_b4 < local_bc);
LAB_000316a3:
  if (param_2 == 0) {
    return 1;
  }
LAB_000316b0:
  putchar(10);
  return 1;
}


PUSH EBP
PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x000153d0
ADD EBX,0x41d77
SUB ESP,0xbc
MOV EDI,dword ptr [EAX + 0x10]
MOV ESI,dword ptr [EAX + 0x1c]
MOV dword ptr [ESP + 0x18],EAX
MOV EAX,dword ptr [EAX + 0x20]
MOV dword ptr [ESP + 0xc],EDX
TEST EDI,EDI
JZ 0x00031820
MOV EDX,0x17
CMP EDX,ESI
MOV EDX,0x0
SBB EDX,EAX
JNC 0x00031558
LEA EAX,[EDI + 0x8]
LEA EBP,[EDI + ESI*0x1]
LEA ECX,[EDI + 0x4]
MOV dword ptr [ESP + 0x1c],EAX
CMP ECX,EBP
JNC 0x000313b8
MOV EAX,0x4
MOV dword ptr [ESP + 0x14],ECX
LEA ECX,[EBX + 0x3b4c]
SUB ESP,0x8
MOV dword ptr [ESP + 0x18],ECX
PUSH EAX
PUSH EDI
CALL dword ptr [ECX]
MOV dword ptr [ESP + 0x30],EAX
ADD ESP,0x10
CMP EAX,0x1
JBE 0x00031580
CMP dword ptr [ESP + 0x1c],EBP
MOV ECX,dword ptr [ESP + 0x14]
JC 0x00031538
CMP ECX,EBP
JNC 0x0003131f
LEA EAX,[ESI + -0x5]
CMP EAX,0x7
JBE 0x000323ac
LEA ECX,[EDI + 0xc]
MOV dword ptr [ESP + 0x14],0x0
CMP ECX,EBP
JC 0x000313e1
LEA ESI,[ESI]
LEA EAX,[EDI + 0x10]
MOV dword ptr [ESP + 0x1c],EAX
CMP EBP,EAX
JA 0x00031478
MOV dword ptr [ESP + 0x34],0x0
MOV EAX,dword ptr [ESP + 0x1c]
CMP EAX,EDI
JC 0x000318a0
MOV dword ptr [ESP + 0x44],EAX
MOV dword ptr [ESP + 0x24],EAX
MOV dword ptr [ESP + 0x10],0x0
MOV EAX,dword ptr [ESP + 0xc]
TEST EAX,EAX
JNZ 0x00031590
CMP EBP,dword ptr [ESP + 0x24]
JC 0x00031858
CMP dword ptr [ESP + 0x20],0x1
JZ 0x00031630
CMP dword ptr [ESP + 0x20],0x2
JZ 0x00031930
MOV EAX,dword ptr [ESP + 0xc]
TEST EAX,EAX
JNZ 0x00031d10
ADD ESP,0xbc
MOV EAX,0x1
POP EBX
POP ESI
POP EDI
POP EBP
RET
CMP EDI,EBP
JC 0x00031520
MOV dword ptr [ESP + 0x20],0x0
MOV dword ptr [ESP + 0x14],0x0
LEA ECX,[EDI + 0xc]
CMP ECX,EBP
JNC 0x00031420
LEA EAX,[EBX + 0x3b4c]
MOV dword ptr [ESP + 0x10],EAX
MOV dword ptr [ESP + 0x24],ECX
SUB ESP,0x8
PUSH 0x4
PUSH dword ptr [ESP + 0x28]
MOV EAX,dword ptr [ESP + 0x20]
CALL dword ptr [EAX]
MOV dword ptr [ESP + 0x44],EAX
LEA EAX,[EDI + 0x10]
MOV dword ptr [ESP + 0x2c],EAX
ADD ESP,0x10
CMP EBP,EAX
MOV ECX,dword ptr [ESP + 0x24]
JA 0x00031510
LEA EAX,[ESI + -0xd]
CMP EAX,0x7
JA 0x0003134f
SUB ESI,0xc
JMP 0x0003148f
CMP dword ptr [ESP + 0x1c],EBP
JNC 0x00031338
LEA EAX,[ESI + -0x9]
CMP EAX,0x7
JA 0x00031338
MOV dword ptr [ESP + 0x24],ECX
SUB ESI,0x8
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0x3b4c]
MOV dword ptr [ESP + 0x18],EAX
PUSH ESI
PUSH dword ptr [ESP + 0x28]
CALL dword ptr [EAX]
MOV dword ptr [ESP + 0x44],EAX
LEA EAX,[EDI + 0x10]
MOV dword ptr [ESP + 0x2c],EAX
ADD ESP,0x10
CMP EAX,EBP
JNC 0x0003134f
MOV ESI,0x4
MOV ECX,dword ptr [ESP + 0x24]
JMP 0x0003148f
LEA EAX,[EBX + 0x3b4c]
MOV dword ptr [ESP + 0x34],0x0
MOV ESI,0x4
MOV dword ptr [ESP + 0x10],EAX
SUB ESP,0x8
PUSH ESI
PUSH ECX
MOV EAX,dword ptr [ESP + 0x20]
CALL dword ptr [EAX]
MOV EDX,dword ptr [ESP + 0x2c]
MOV ESI,EAX
MOV dword ptr [ESP + 0x20],EAX
LEA EAX,[EDX + ESI*0x8]
LEA ECX,[EAX + ESI*0x4]
MOV dword ptr [ESP + 0x34],ECX
ADD ESP,0x10
CMP EAX,EDX
JC 0x000314c9
CMP EDI,ECX
JA 0x000314c9
CMP EAX,EDX
JNZ 0x00031840
TEST ESI,ESI
JZ 0x00031840
MOV EAX,dword ptr [ESP + 0x18]
SUB ESP,0xc
MOV ESI,dword ptr [EAX + 0x8]
PUSH 0x5
LEA EAX,[EBX + 0xfffdf81c]
MOV EDI,dword ptr [ESP + 0x20]
PUSH EDI
PUSH EAX
LEA EAX,[EBX + 0xfffdf844]
PUSH EAX
PUSH 0x0
CALL 0x00014800
ADD ESP,0x1c
PUSH EDI
PUSH ESI
PUSH EAX
CALL 0x00048d70
ADD ESP,0x10
XOR EAX,EAX
ADD ESP,0xbc
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV ESI,0x4
JMP 0x0003148f
LEA EAX,[ESI + -0x1]
CMP EAX,0x7
JA 0x000313c0
MOV EAX,ESI
JMP 0x000312dc
MOV EAX,0x4
SUB ESP,0x8
PUSH EAX
PUSH ECX
MOV EAX,dword ptr [ESP + 0x20]
CALL dword ptr [EAX]
MOV dword ptr [ESP + 0x24],EAX
ADD ESP,0x10
JMP 0x000313d0
MOV EAX,dword ptr [ESP + 0x18]
SUB ESP,0x4
MOV ESI,dword ptr [EAX + 0x8]
PUSH 0x5
LEA EAX,[EBX + 0xfffdf7e8]
PUSH EAX
PUSH 0x0
CALL 0x000141f0
POP EDX
POP ECX
JMP 0x000314f3
MOV dword ptr [ESP + 0x14],0x0
JMP 0x000313d0
MOV EAX,dword ptr [ESP + 0x18]
LEA EDX,[EAX + 0xc]
MOV EAX,dword ptr [EAX + 0x8]
CALL 0x0001ec20
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdf86c]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
POP ESI
POP EDI
MOV EDI,dword ptr [ESP + 0x28]
PUSH EDI
PUSH EAX
CALL 0x000140b0
ADD ESP,0x10
CMP EDI,0x1
JBE 0x000315e9
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdf88c]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
POP EDX
POP ECX
PUSH dword ptr [ESP + 0x1c]
PUSH EAX
CALL 0x000140b0
ADD ESP,0x10
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdf8ac]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
POP EDX
POP ECX
PUSH dword ptr [ESP + 0x3c]
PUSH EAX
CALL 0x000140b0
ADD ESP,0xc
LEA EAX,[EBX + 0xfffdf8cc]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
POP ESI
POP EDI
PUSH dword ptr [ESP + 0x18]
PUSH EAX
CALL 0x000140b0
ADD ESP,0x10
JMP 0x00031377
MOV EDI,dword ptr [ESP + 0xc]
TEST EDI,EDI
JZ 0x00031d40
MOV ECX,dword ptr [ESP + 0x10]
TEST ECX,ECX
JZ 0x000316b0
MOV EAX,dword ptr [ESP + 0x44]
MOV ESI,dword ptr [ESP + 0x1c]
MOV dword ptr [ESP + 0x14],0x0
LEA EDI,[EBX + 0x3b4c]
LEA ECX,[EAX + 0x8]
LEA EDX,[ESI + 0x4]
MOV dword ptr [ESP + 0x20],ECX
MOV dword ptr [ESP + 0x1c],EDX
CMP ECX,EBP
JBE 0x000316c8
MOV dword ptr [ESP + 0x60],0x0
MOV dword ptr [ESP + 0x64],0x0
MOV dword ptr [ESP + 0x68],0x0
MOV dword ptr [ESP + 0x6c],0x0
ADD dword ptr [ESP + 0x14],0x1
MOV EAX,dword ptr [ESP + 0x20]
MOV ECX,dword ptr [ESP + 0x14]
MOV ESI,dword ptr [ESP + 0x1c]
CMP ECX,dword ptr [ESP + 0x10]
JC 0x0003165a
MOV ESI,dword ptr [ESP + 0xc]
TEST ESI,ESI
JZ 0x000313a3
NOP
SUB ESP,0xc
PUSH 0xa
CALL 0x00014530
ADD ESP,0x10
JMP 0x000313a3
SUB ESP,0x4
LEA EDX,[ESP + 0x6c]
PUSH EDX
LEA EDX,[ESP + 0x68]
PUSH EDX
PUSH EAX
CALL 0x000490b0
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x64]
OR EAX,dword ptr [ESP + 0x60]
JZ 0x00031da0
MOV EAX,0x4
CMP dword ptr [ESP + 0x1c],EBP
JNC 0x00031800
SUB ESP,0x8
PUSH EAX
LEA EAX,[EBX + 0x3b4c]
PUSH ESI
CALL dword ptr [EAX]
MOV ESI,dword ptr [ESP + 0x34]
LEA ECX,[ESI + EAX*0x4]
ADD ESP,0x10
CMP ECX,ESI
JC 0x000320da
MOV ESI,dword ptr [ESP + 0xc]
TEST ESI,ESI
JNZ 0x000318b0
CMP EBP,ECX
JA 0x0003174d
JMP 0x00031880
SUB ESP,0x8
PUSH EAX
LEA EAX,[EBX + 0xfffe1b71]
PUSH EAX
CALL 0x000140b0
ADD ESP,0x10
MOV ECX,ESI
CMP ESI,EBP
JNC 0x00031880
LEA ESI,[ECX + 0x4]
CMP ESI,EBP
JC 0x000317a0
MOV EAX,EBP
SUB EAX,ECX
LEA EDX,[EAX + -0x1]
CMP EDX,0x7
JA 0x000317d8
SUB ESP,0x8
PUSH EAX
PUSH ECX
CALL dword ptr [EDI]
ADD ESP,0x10
TEST EAX,EAX
JZ 0x000317d8
MOV EDX,dword ptr [ESP + 0xc]
TEST EDX,EDX
JNZ 0x00031730
MOV EDX,dword ptr [EBX + 0x3920]
CMP EDX,dword ptr [EBX + 0x3924]
JNC 0x000317b0
LEA ECX,[EDX + 0x1]
MOV dword ptr [EBX + 0x3920],ECX
MOV ECX,dword ptr [EBX + 0x3928]
MOV dword ptr [ECX + EDX*0x4],EAX
JMP 0x00031743
MOV EAX,0x4
JMP 0x00031760
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdf9a0]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
MOV dword ptr [ESP],EAX
CALL 0x00048830
ADD ESP,0x10
JMP 0x00031743
MOV ESI,dword ptr [ESP + 0xc]
TEST ESI,ESI
JZ 0x00031900
SUB ESP,0xc
PUSH 0xa
CALL 0x00014530
ADD ESP,0x10
JMP 0x0003168c
CMP EBP,ESI
JBE 0x00031814
MOV EAX,EBP
SUB EAX,ESI
LEA EDX,[EAX + -0x1]
CMP EDX,0x7
JBE 0x000316fb
MOV ECX,dword ptr [ESP + 0x24]
JMP 0x0003171a
MOV EAX,dword ptr [ESP + 0x18]
SUB ESP,0x4
MOV ESI,dword ptr [EAX + 0x8]
PUSH 0x5
LEA EAX,[EBX + 0xfffe20f6]
JMP 0x0003156a
MOV EDI,dword ptr [ESP + 0x1c]
MOV dword ptr [ESP + 0x1c],EAX
MOV dword ptr [ESP + 0x44],EDI
JMP 0x0003136b
MOV EAX,dword ptr [ESP + 0x18]
SUB ESP,0x4
MOV ESI,dword ptr [EAX + 0x8]
LEA EAX,[EBX + 0xfffdf8ec]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
ADD ESP,0xc
PUSH dword ptr [ESP + 0x14]
JMP 0x000314f3
MOV EAX,dword ptr [ESP + 0x18]
SUB ESP,0x4
MOV ESI,dword ptr [EAX + 0x8]
PUSH 0x5
LEA EAX,[EBX + 0xfffdf978]
JMP 0x0003156a
MOV dword ptr [ESP + 0x10],0x0
JMP 0x000314c9
MOV dword ptr [ESP + 0x28],ECX
SUB ESP,0x4
LEA EAX,[ESP + 0x74]
PUSH EAX
PUSH dword ptr [ESP + 0x74]
PUSH dword ptr [ESP + 0x74]
MOV EDX,dword ptr [ESP + 0x74]
MOV EAX,dword ptr [ESP + 0x70]
CALL 0x0001eb80
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xfffdf950]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
ADD ESP,0xc
PUSH ESI
PUSH dword ptr [ESP + 0x1c]
PUSH EAX
CALL 0x000140b0
ADD ESP,0x10
MOV ECX,dword ptr [ESP + 0x28]
JMP 0x00031726
MOV EAX,dword ptr [EBX + 0x3920]
CMP EAX,dword ptr [EBX + 0x3924]
JNC 0x00031de3
LEA EDX,[EAX + 0x1]
MOV dword ptr [EBX + 0x3920],EDX
MOV EDX,dword ptr [EBX + 0x3928]
MOV dword ptr [EDX + EAX*0x4],0x0
JMP 0x0003168c
MOV ESI,dword ptr [ESP + 0x14]
MOV EAX,dword ptr [ESP + 0x24]
LEA EDI,[ESI*0x4 + 0x0]
ADD EAX,EDI
MOV dword ptr [ESP + 0x4c],EDI
MOV dword ptr [ESP + 0x48],EAX
JC 0x00031ba0
TEST EDI,EDI
LEA EAX,[EDI + 0x3]
CMOVNS EAX,EDI
SAR EAX,0x2
CMP EAX,ESI
JNZ 0x00031ba0
MOV EAX,dword ptr [ESP + 0x4c]
IMUL EAX,dword ptr [ESP + 0x34]
MOV EDI,dword ptr [ESP + 0x48]
MOV ESI,dword ptr [ESP + 0x18]
ADD EDI,EAX
MOV ESI,dword ptr [ESI + 0x8]
ADD EAX,EDI
MOV dword ptr [ESP + 0x5c],EDI
CMP EBP,EAX
JC 0x000322c9
MOV ECX,0x10
LEA EDI,[EBX + 0xfffe210b]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
MOVSX EAX,AL
MOV dword ptr [ESP + 0x58],EAX
MOV EAX,dword ptr [ESP + 0xc]
TEST EAX,EAX
JNZ 0x00032122
MOV EDX,dword ptr [ESP + 0x58]
MOV EAX,dword ptr [ESP + 0x34]
TEST EDX,EDX
JNZ 0x000320ff
SUB ESP,0x8
MOV dword ptr [EBX + 0x3910],EAX
PUSH 0x68
PUSH EAX
CALL 0x00031220
MOV dword ptr [EBX + 0x3908],EAX
MOV dword ptr [ESP + 0x64],EAX
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x10]
TEST EAX,EAX
JZ 0x00031e12
LEA EAX,[ESP + 0x68]
MOV EDI,dword ptr [ESP + 0x1c]
MOV ESI,dword ptr [ESP + 0x44]
MOV dword ptr [ESP + 0x28],0x0
MOV dword ptr [ESP + 0x50],EAX
LEA EAX,[EBX + 0x3b4c]
MOV dword ptr [ESP + 0x2c],EAX
JMP 0x00031a3b
CMP EBP,EDI
JBE 0x00031a20
MOV EAX,EBP
SUB EAX,EDI
LEA EDX,[EAX + -0x1]
CMP EDX,0x7
JBE 0x00031a7a
ADD dword ptr [ESP + 0x28],0x1
MOV ESI,dword ptr [ESP + 0x30]
MOV EAX,dword ptr [ESP + 0x28]
MOV EDI,dword ptr [ESP + 0x38]
CMP EAX,dword ptr [ESP + 0x10]
JNC 0x00031e06
LEA EAX,[ESI + 0x8]
MOV dword ptr [ESP + 0x30],EAX
CMP EAX,EBP
JBE 0x00031c60
MOV dword ptr [ESP + 0x60],0x0
MOV dword ptr [ESP + 0x64],0x0
MOV dword ptr [ESP + 0x68],0x0
MOV dword ptr [ESP + 0x6c],0x0
LEA EAX,[EDI + 0x4]
MOV dword ptr [ESP + 0x38],EAX
CMP EAX,EBP
JNC 0x00031a10
MOV EAX,0x4
SUB ESP,0x8
PUSH EAX
PUSH EDI
MOV EAX,dword ptr [ESP + 0x3c]
CALL dword ptr [EAX]
MOV EDI,EAX
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00031a20
CMP dword ptr [ESP + 0x34],EAX
JC 0x0003235d
MOV EAX,dword ptr [ESP + 0xc]
TEST EAX,EAX
JNZ 0x00031c80
MOV ECX,dword ptr [ESP + 0x30]
CMP ECX,EBP
JNC 0x00032397
IMUL EAX,EDI,0x68
MOV ESI,dword ptr [ESP + 0x54]
MOV EDX,dword ptr [ECX + -0x4]
LEA ESI,[ESI + EAX*0x1 + -0x68]
MOV EAX,dword ptr [ECX + -0x8]
MOV dword ptr [ESP + 0x40],ESI
MOV dword ptr [ESI],EAX
MOV dword ptr [ESI + 0x4],EDX
LEA ESI,[EDI + 0x3fffffff]
IMUL ESI,dword ptr [ESP + 0x4c]
ADD ESI,dword ptr [ESP + 0x48]
JC 0x00031db8
CMP EBP,ESI
JC 0x00031db8
MOV EAX,dword ptr [ESP + 0x14]
TEST EAX,EAX
JZ 0x00031a20
MOV dword ptr [ESP + 0x18],0x0
MOV EDI,dword ptr [ESP + 0x24]
MOV dword ptr [ESP + 0x20],EBP
LEA ESI,[ESI]
NOP
MOV EDX,dword ptr [ESP + 0x20]
MOV EAX,ESI
ADD ESI,0x4
ADD dword ptr [ESP + 0x18],0x1
CMP EDX,ESI
JA 0x00031bd0
XOR ECX,ECX
CMP EAX,EDX
JNC 0x00031b32
SUB EDX,EAX
LEA EBP,[EDX + -0x1]
CMP EBP,0x7
JBE 0x00031bd5
MOV EBP,dword ptr [ESP + 0xc]
TEST EBP,EBP
JNZ 0x00031bf1
MOV EAX,dword ptr [ESP + 0x20]
LEA EBP,[EDI + 0x4]
CMP EAX,EBP
JA 0x00031c10
CMP EDI,EAX
JNC 0x00031b5f
SUB EAX,EDI
LEA EDX,[EAX + -0x1]
CMP EDX,0x7
JBE 0x00031c15
XOR EAX,EAX
MOV EDI,dword ptr [ESP + 0x40]
MOV dword ptr [EDI + EAX*0x8 + 0x8],ECX
MOV dword ptr [EDI + EAX*0x8 + 0xc],0x0
MOV EDI,EBP
MOV ECX,dword ptr [ESP + 0x18]
CMP dword ptr [ESP + 0x14],ECX
JA 0x00031b08
MOV EAX,dword ptr [ESP + 0xc]
MOV EBP,dword ptr [ESP + 0x20]
TEST EAX,EAX
JZ 0x00031a20
SUB ESP,0xc
PUSH 0xa
CALL 0x00014530
ADD ESP,0x10
JMP 0x00031a20
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdf9d4]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
POP EDX
POP ECX
PUSH dword ptr [ESP + 0x1c]
PUSH EAX
CALL 0x00048d70
ADD ESP,0x10
XOR EAX,EAX
JMP 0x000314ff
MOV EDX,0x4
SUB ESP,0x8
PUSH EDX
PUSH EAX
MOV EAX,dword ptr [ESP + 0x3c]
CALL dword ptr [EAX]
MOV EBP,dword ptr [ESP + 0x1c]
ADD ESP,0x10
MOV ECX,EAX
TEST EBP,EBP
JZ 0x00031b3e
SUB ESP,0x8
LEA EAX,[EBX + 0xfffe214d]
LEA EBP,[EDI + 0x4]
PUSH ECX
PUSH EAX
CALL 0x000140b0
ADD ESP,0x10
JMP 0x00031b71
MOV EAX,0x4
MOV dword ptr [ESP + 0x3c],ECX
SUB ESP,0x8
PUSH EAX
PUSH EDI
MOV EAX,dword ptr [ESP + 0x3c]
CALL dword ptr [EAX]
MOV ECX,dword ptr [ESP + 0x4c]
ADD ESP,0x10
CMP EAX,0x7
MOV EDI,EAX
JBE 0x00031b61
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdfae0]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
POP EDX
POP ECX
PUSH EDI
PUSH EAX
CALL 0x00048d70
ADD ESP,0x10
JMP 0x00031b71
SUB ESP,0x4
PUSH dword ptr [ESP + 0x54]
LEA EAX,[ESP + 0x68]
PUSH EAX
PUSH ESI
CALL 0x000490b0
ADD ESP,0x10
JMP 0x00031a6a
LEA ESI,[EDI + 0x3fffffff]
IMUL ESI,dword ptr [ESP + 0x4c]
ADD ESI,dword ptr [ESP + 0x48]
JC 0x00031db8
CMP EBP,ESI
JC 0x00031db8
SUB ESP,0x4
LEA EAX,[ESP + 0x74]
PUSH EAX
PUSH dword ptr [ESP + 0x74]
PUSH dword ptr [ESP + 0x74]
MOV EDX,dword ptr [ESP + 0x74]
MOV EAX,dword ptr [ESP + 0x70]
CALL 0x0001eb80
MOV dword ptr [ESP + 0x28],EAX
ADD ESP,0xc
LEA EAX,[EBX + 0xfffe2140]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
ADD ESP,0xc
MOV EDX,dword ptr [ESP + 0x1c]
PUSH EDX
PUSH dword ptr [ESP + 0x30]
PUSH EAX
CALL 0x000140b0
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x14]
TEST EAX,EAX
JZ 0x00031b8d
IMUL EDI,EDI,0x68
MOV EAX,dword ptr [ESP + 0x54]
LEA EAX,[EAX + EDI*0x1 + -0x68]
MOV dword ptr [ESP + 0x40],EAX
JMP 0x00031af3
SUB ESP,0x4
LEA EAX,[EBX + 0xfffe2160]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
POP EDI
POP EBP
PUSH dword ptr [ESP + 0x28]
PUSH EAX
CALL 0x000140b0
ADD ESP,0x10
JMP 0x000316b0
MOV EDX,EBP
SUB EDX,dword ptr [ESP + 0x24]
LEA EAX,[EDX + 0x3]
CMOVNS EAX,EDX
MOV EDX,dword ptr [EBX + 0x3928]
SAR EAX,0x2
TEST EDX,EDX
JZ 0x000322a0
ADD EAX,dword ptr [EBX + 0x3920]
MOV dword ptr [EBX + 0x3924],EAX
CMP EAX,0x3ffffffe
JA 0x000323a7
SUB ESP,0x8
SHL EAX,0x2
PUSH EAX
PUSH EDX
CALL 0x00014220
ADD ESP,0x10
MOV dword ptr [EBX + 0x3928],EAX
MOV EDX,dword ptr [ESP + 0x10]
TEST EDX,EDX
JNZ 0x00031644
JMP 0x000313a3
MOV EAX,dword ptr [ESP + 0x6c]
OR EAX,dword ptr [ESP + 0x68]
JNZ 0x000316ec
JMP 0x0003168c
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdfaa0]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
ADD ESP,0xc
PUSH dword ptr [ESP + 0x18]
PUSH EDI
PUSH EAX
CALL 0x00048d70
ADD ESP,0x10
XOR EAX,EAX
JMP 0x000314ff
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdf9a0]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
MOV dword ptr [ESP],EAX
CALL 0x00048830
ADD ESP,0x10
JMP 0x0003168c
MOV EAX,dword ptr [ESP + 0xc]
TEST EAX,EAX
JNZ 0x00032333
MOV ECX,dword ptr [ESP + 0x14]
TEST ECX,ECX
JZ 0x00031eaa
LEA EAX,[EBX + 0x3b4c]
MOV ESI,dword ptr [ESP + 0x24]
XOR EDI,EDI
MOV dword ptr [ESP + 0x20],EAX
JMP 0x00031e56
MOV dword ptr [ESP + 0x18],0x0
CMP EBP,EDX
JBE 0x00031e48
MOV ECX,EBP
SUB ECX,EDX
LEA EAX,[ECX + -0x1]
CMP EAX,0x7
JBE 0x00031e67
MOV EDX,dword ptr [ESP + 0xc]
TEST EDX,EDX
JNZ 0x00031e80
CMP dword ptr [ESP + 0x14],EDI
JBE 0x00031e9e
MOV EDX,ESI
ADD ESI,0x4
ADD EDI,0x1
CMP EBP,ESI
JBE 0x00031e30
MOV ECX,0x4
SUB ESP,0x8
PUSH ECX
PUSH EDX
MOV EAX,dword ptr [ESP + 0x30]
CALL dword ptr [EAX]
MOV dword ptr [ESP + 0x28],EAX
ADD ESP,0x10
JMP 0x00031e48
MOV EAX,dword ptr [ESP + 0x18]
CALL 0x0001e440
SUB ESP,0x8
PUSH EAX
LEA EAX,[EBX + 0xfffe213b]
PUSH EAX
CALL 0x000140b0
ADD ESP,0x10
JMP 0x00031e50
MOV EAX,dword ptr [ESP + 0xc]
TEST EAX,EAX
JNZ 0x0003227a
MOV EAX,dword ptr [ESP + 0x10]
TEST EAX,EAX
JZ 0x000313a3
LEA EAX,[ESP + 0x68]
MOV dword ptr [ESP + 0x18],0x0
MOV ESI,dword ptr [ESP + 0x1c]
MOV dword ptr [ESP + 0x3c],EAX
LEA EAX,[EBX + 0x3b4c]
MOV dword ptr [ESP + 0x30],EAX
MOV EAX,dword ptr [ESP + 0x44]
JMP 0x00031f0b
CMP EBP,ESI
JBE 0x00031ef0
MOV EAX,EBP
SUB EAX,ESI
LEA EDX,[EAX + -0x1]
CMP EDX,0x7
JBE 0x00031f4a
ADD dword ptr [ESP + 0x18],0x1
MOV EAX,dword ptr [ESP + 0x28]
MOV EDI,dword ptr [ESP + 0x18]
MOV ESI,dword ptr [ESP + 0x2c]
CMP EDI,dword ptr [ESP + 0x10]
JNC 0x000316a3
LEA EDI,[EAX + 0x8]
MOV dword ptr [ESP + 0x28],EDI
CMP EDI,EBP
JBE 0x000320c0
MOV dword ptr [ESP + 0x60],0x0
MOV dword ptr [ESP + 0x64],0x0
MOV dword ptr [ESP + 0x68],0x0
MOV dword ptr [ESP + 0x6c],0x0
LEA EAX,[ESI + 0x4]
MOV dword ptr [ESP + 0x2c],EAX
CMP EAX,EBP
JNC 0x00031ee0
MOV EAX,0x4
SUB ESP,0x8
PUSH EAX
PUSH ESI
MOV EAX,dword ptr [ESP + 0x40]
CALL dword ptr [EAX]
MOV ESI,EAX
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00031ef0
LEA EDI,[EAX + 0x3fffffff]
MOV EAX,dword ptr [ESP + 0xc]
IMUL EDI,dword ptr [ESP + 0x4c]
ADD EDI,dword ptr [ESP + 0x5c]
TEST EAX,EAX
JNZ 0x000322d9
MOV EAX,dword ptr [ESP + 0x14]
TEST EAX,EAX
JZ 0x00031ef0
IMUL ESI,ESI,0x68
MOV EAX,dword ptr [ESP + 0x54]
MOV dword ptr [ESP + 0x1c],0x0
MOV dword ptr [ESP + 0x20],EBP
LEA EAX,[EAX + ESI*0x1 + -0x68]
MOV ESI,EDI
MOV EDI,dword ptr [ESP + 0x24]
MOV dword ptr [ESP + 0x34],EAX
LEA ESI,[ESI]
LEA ESI,[ESI]
MOV EDX,dword ptr [ESP + 0x20]
MOV EAX,ESI
ADD ESI,0x4
ADD dword ptr [ESP + 0x1c],0x1
CMP EDX,ESI
JA 0x00032030
XOR ECX,ECX
CMP EDX,EAX
JBE 0x00031fd2
SUB EDX,EAX
LEA EBP,[EDX + -0x1]
CMP EBP,0x7
JBE 0x00032035
MOV EBP,dword ptr [ESP + 0xc]
TEST EBP,EBP
JNZ 0x000320a0
MOV EAX,dword ptr [ESP + 0x20]
LEA EBP,[EDI + 0x4]
CMP EAX,EBP
JA 0x00032050
CMP EDI,EAX
JNC 0x00031ff7
SUB EAX,EDI
LEA EDX,[EAX + -0x1]
CMP EDX,0x7
JBE 0x00032055
XOR EAX,EAX
MOV EDI,dword ptr [ESP + 0x34]
MOV dword ptr [EDI + EAX*0x4 + 0x48],ECX
MOV EDI,EBP
MOV ECX,dword ptr [ESP + 0x1c]
CMP dword ptr [ESP + 0x14],ECX
JA 0x00031fb0
MOV EAX,dword ptr [ESP + 0xc]
MOV EBP,dword ptr [ESP + 0x20]
TEST EAX,EAX
JZ 0x00031ef0
SUB ESP,0xc
PUSH 0xa
CALL 0x00014530
ADD ESP,0x10
JMP 0x00031ef0
MOV EDX,0x4
SUB ESP,0x8
PUSH EDX
PUSH EAX
MOV EAX,dword ptr [ESP + 0x40]
CALL dword ptr [EAX]
MOV ECX,EAX
ADD ESP,0x10
JMP 0x00031fd2
MOV EAX,0x4
MOV dword ptr [ESP + 0x38],ECX
SUB ESP,0x8
PUSH EAX
PUSH EDI
MOV EAX,dword ptr [ESP + 0x40]
CALL dword ptr [EAX]
MOV ECX,dword ptr [ESP + 0x48]
ADD ESP,0x10
CMP EAX,0x7
MOV EDI,EAX
JBE 0x00031ff9
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdfae0]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
POP EDX
POP ECX
PUSH EDI
PUSH EAX
CALL 0x00048d70
ADD ESP,0x10
JMP 0x00032001
SUB ESP,0x8
LEA EAX,[EBX + 0xfffe214d]
LEA EBP,[EDI + 0x4]
PUSH ECX
PUSH EAX
CALL 0x000140b0
ADD ESP,0x10
JMP 0x00032001
SUB ESP,0x4
PUSH dword ptr [ESP + 0x40]
LEA EDX,[ESP + 0x68]
PUSH EDX
PUSH EAX
CALL 0x000490b0
ADD ESP,0x10
JMP 0x00031f3a
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdf91c]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
MOV dword ptr [ESP],EAX
CALL 0x00048d70
ADD ESP,0x10
XOR EAX,EAX
JMP 0x000314ff
SUB ESP,0x8
MOV dword ptr [EBX + 0x3914],EAX
PUSH 0x68
PUSH EAX
CALL 0x00031220
MOV dword ptr [ESP + 0x64],EAX
ADD ESP,0x10
MOV dword ptr [EBX + 0x390c],EAX
JMP 0x000319d9
SUB ESP,0x4
LEA EAX,[EBX + 0xfffe211b]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
MOV dword ptr [ESP],EAX
CALL 0x000140b0
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x58]
TEST EAX,EAX
JNZ 0x00032342
SUB ESP,0x4
LEA EAX,[EBX + 0xfffe7a7f]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
ADD ESP,0x10
SUB ESP,0x8
LEA EDI,[EBX + 0xfffe213b]
PUSH EAX
LEA EAX,[EBX + 0xfffe212b]
MOV dword ptr [ESP + 0x34],EAX
PUSH EAX
CALL 0x000140b0
LEA EAX,[EBX + 0x3b4c]
ADD ESP,0x10
MOV ESI,dword ptr [ESP + 0x24]
MOV dword ptr [ESP + 0x20],EAX
MOV EAX,dword ptr [ESP + 0x14]
TEST EAX,EAX
JZ 0x000321eb
MOV dword ptr [ESP + 0x18],EDI
JMP 0x000321cd
XOR EAX,EAX
CMP EDX,EBP
JNC 0x000321b2
MOV ECX,EBP
SUB ECX,EDX
LEA EDI,[ECX + -0x1]
CMP EDI,0x7
JBE 0x000321db
CALL 0x0001e440
SUB ESP,0x8
PUSH EAX
PUSH dword ptr [ESP + 0x24]
CALL 0x000140b0
ADD ESP,0x10
CMP dword ptr [ESP + 0x48],ESI
JZ 0x000321eb
MOV EDX,ESI
ADD ESI,0x4
CMP EBP,ESI
JBE 0x000321a0
MOV ECX,0x4
SUB ESP,0x8
PUSH ECX
PUSH EDX
MOV EAX,dword ptr [ESP + 0x30]
CALL dword ptr [EAX]
ADD ESP,0x10
JMP 0x000321b2
SUB ESP,0xc
PUSH 0xa
CALL 0x00014530
ADD ESP,0x10
MOV ECX,dword ptr [ESP + 0x10]
MOV dword ptr [ESP + 0x54],0x0
TEST ECX,ECX
JNZ 0x000319e5
MOV EAX,dword ptr [ESP + 0x10]
MOV dword ptr [ESP + 0x54],EAX
SUB ESP,0xc
PUSH 0xa
CALL 0x00014530
ADD ESP,0xc
LEA EAX,[EBX + 0xfffe2152]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
MOV dword ptr [ESP],EAX
CALL 0x000140b0
ADD ESP,0x10
MOV EDI,dword ptr [ESP + 0x58]
TEST EDI,EDI
JNZ 0x0003237c
SUB ESP,0x4
LEA EAX,[EBX + 0xfffe7a7f]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
ADD ESP,0x10
SUB ESP,0x8
PUSH EAX
PUSH dword ptr [ESP + 0x34]
CALL 0x000140b0
ADD ESP,0x10
MOV ESI,dword ptr [ESP + 0x14]
TEST ESI,ESI
JNZ 0x00031e1e
SUB ESP,0xc
PUSH 0xa
CALL 0x00014530
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x10]
TEST EAX,EAX
JNZ 0x00031eb6
JMP 0x000316b0
SUB ESP,0x8
MOV dword ptr [EBX + 0x3924],EAX
PUSH 0x4
PUSH EAX
MOV dword ptr [EBX + 0x3920],0x0
CALL 0x0002dba0
ADD ESP,0x10
MOV dword ptr [EBX + 0x3928],EAX
JMP 0x00031d8a
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdf9f8]
PUSH 0x5
JMP 0x0003156a
SUB ESP,0x4
LEA EAX,[ESP + 0x74]
PUSH EAX
PUSH dword ptr [ESP + 0x74]
PUSH dword ptr [ESP + 0x74]
MOV EDX,dword ptr [ESP + 0x74]
MOV EAX,dword ptr [ESP + 0x70]
CALL 0x0001eb80
MOV dword ptr [ESP + 0x2c],EAX
ADD ESP,0xc
LEA EAX,[EBX + 0xfffe2140]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
ADD ESP,0xc
MOV EDX,dword ptr [ESP + 0x20]
PUSH EDX
PUSH dword ptr [ESP + 0x20]
PUSH EAX
CALL 0x000140b0
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x14]
TEST EAX,EAX
JNZ 0x00031f85
JMP 0x0003201d
LEA EAX,[EBX + 0xfffe212b]
MOV dword ptr [ESP + 0x28],EAX
JMP 0x00032214
SUB ESP,0x4
LEA EAX,[EBX + 0xfffe818c]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
ADD ESP,0x10
JMP 0x00032162
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdfa2c]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
ADD ESP,0xc
PUSH dword ptr [ESP + 0x38]
JMP 0x00031dd2
SUB ESP,0x4
LEA EAX,[EBX + 0xfffe818c]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141f0
ADD ESP,0x10
JMP 0x0003225e
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdfa68]
PUSH 0x5
JMP 0x0003156a
CALL 0x0001e980
LEA EAX,[ESI + -0x4]
JMP 0x0003153d
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nundefined4 __regparm3 FUN_00031280(int param_1,int param_2)\n\n{\n  byte *pbVar1;\n  uint uVar2;\n  undefined4 *puVar3;\n  undefined4 *puVar4;\n  byte *pbVar5;\n  uint uVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 uVar9;\n  byte *extraout_ECX;\n  int iVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  uint uVar13;\n  byte *pbVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  int *piVar19;\n  undefined4 *local_bc;\n  undefined4 *local_b8;\n  undefined4 *local_b4;\n  byte *local_b0;\n  uint local_ac;\n  byte *local_a8;\n  undefined4 *local_a4;\n  uint local_98;\n  undefined4 *local_8c;\n  byte *local_88;\n  undefined4 *local_78;\n  int local_6c;\n  int local_68;\n  int local_64;\n  int local_60;\n  undefined1 local_5c [72];\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x31289;\n  pbVar14 = *(byte **)(param_1 + 0x10);\n  puVar3 = *(undefined4 **)(param_1 + 0x1c);\n  if (pbVar14 == (byte *)0x0) {\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is empty\n";\n  }\n  else {\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }\nLAB_0003156a:\n  local_bc = (undefined4 *)0x5;\n  uVar9 = dcgettext(0,pcVar7,5);\nLAB_000314f3:\n  warn(uVar9,pbVar14,local_bc);\n  return 0;\nLAB_0003165a:\n  if (pbVar1 < local_88 + 8) {\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }\n  piVar19 = &local_64;\n  FUN_000490b0(local_88,&local_6c,piVar19);\n  if ((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)) {\n    iVar8 = 4;\n    if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }\n    if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }\n    if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }\nLAB_0003168c:\n  local_b8 = (undefined4 *)((int)local_b8 + 1);\n  local_88 = local_88 + 8;\n  local_b0 = local_b0 + 4;\n  if (local_bc <= local_b8) goto LAB_000316a3;\n  goto LAB_0003165a;\nLAB_000317d8:\n  if (param_2 == 0) {\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }\n  else {\n    putchar(10);\n  }\n  goto LAB_0003168c;\n  while( true ) {\n    iVar8 = iVar8 + -1;\n    bVar16 = *pbVar14 < *pbVar15;\n    bVar17 = *pbVar14 == *pbVar15;\n    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;\n    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n    if (!bVar17) break;\ncode_r0x00031991:\n    if (iVar8 == 0) break;\n  }\n  bVar17 = !bVar16 && !bVar17;\n  if (param_2 == 0) {\n    if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }\n    if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }\n  }\n  else {\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }\n  local_b4 = (undefined4 *)0x0;\n  pbVar14 = local_b0;\n  do {\n    if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }\n    if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined4 *)((int)local_b4 + 1);\n    local_88 = local_88 + 8;\n    pbVar14 = pbVar14 + 4;\n  } while (local_b4 < local_bc);\nLAB_000316a3:\n  if (param_2 == 0) {\n    return 1;\n  }\nLAB_000316b0:\n  putchar(10);\n  return 1;\n}\n\n" comment (function_definition "undefined4 __regparm3 FUN_00031280(int param_1,int param_2)\n\n{\n  byte *pbVar1;\n  uint uVar2;\n  undefined4 *puVar3;\n  undefined4 *puVar4;\n  byte *pbVar5;\n  uint uVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 uVar9;\n  byte *extraout_ECX;\n  int iVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  uint uVar13;\n  byte *pbVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  int *piVar19;\n  undefined4 *local_bc;\n  undefined4 *local_b8;\n  undefined4 *local_b4;\n  byte *local_b0;\n  uint local_ac;\n  byte *local_a8;\n  undefined4 *local_a4;\n  uint local_98;\n  undefined4 *local_8c;\n  byte *local_88;\n  undefined4 *local_78;\n  int local_6c;\n  int local_68;\n  int local_64;\n  int local_60;\n  undefined1 local_5c [72];\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x31289;\n  pbVar14 = *(byte **)(param_1 + 0x10);\n  puVar3 = *(undefined4 **)(param_1 + 0x1c);\n  if (pbVar14 == (byte *)0x0) {\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is empty\n";\n  }\n  else {\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }\nLAB_0003156a:\n  local_bc = (undefined4 *)0x5;\n  uVar9 = dcgettext(0,pcVar7,5);\nLAB_000314f3:\n  warn(uVar9,pbVar14,local_bc);\n  return 0;\nLAB_0003165a:\n  if (pbVar1 < local_88 + 8) {\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }\n  piVar19 = &local_64;\n  FUN_000490b0(local_88,&local_6c,piVar19);\n  if ((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)) {\n    iVar8 = 4;\n    if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }\n    if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }\n    if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }\nLAB_0003168c:\n  local_b8 = (undefined4 *)((int)local_b8 + 1);\n  local_88 = local_88 + 8;\n  local_b0 = local_b0 + 4;\n  if (local_bc <= local_b8) goto LAB_000316a3;\n  goto LAB_0003165a;\nLAB_000317d8:\n  if (param_2 == 0) {\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }\n  else {\n    putchar(10);\n  }\n  goto LAB_0003168c;\n  while( true ) {\n    iVar8 = iVar8 + -1;\n    bVar16 = *pbVar14 < *pbVar15;\n    bVar17 = *pbVar14 == *pbVar15;\n    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;\n    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n    if (!bVar17) break;\ncode_r0x00031991:\n    if (iVar8 == 0) break;\n  }\n  bVar17 = !bVar16 && !bVar17;\n  if (param_2 == 0) {\n    if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }\n    if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }\n  }\n  else {\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }\n  local_b4 = (undefined4 *)0x0;\n  pbVar14 = local_b0;\n  do {\n    if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }\n    if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined4 *)((int)local_b4 + 1);\n    local_88 = local_88 + 8;\n    pbVar14 = pbVar14 + 4;\n  } while (local_b4 < local_bc);\nLAB_000316a3:\n  if (param_2 == 0) {\n    return 1;\n  }\nLAB_000316b0:\n  putchar(10);\n  return 1;\n}" type_identifier (ERROR "__regparm3" identifier) (function_declarator "FUN_00031280(int param_1,int param_2)" identifier (parameter_list "(int param_1,int param_2)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "int param_2" primitive_type identifier) ))) (compound_statement "{\n  byte *pbVar1;\n  uint uVar2;\n  undefined4 *puVar3;\n  undefined4 *puVar4;\n  byte *pbVar5;\n  uint uVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 uVar9;\n  byte *extraout_ECX;\n  int iVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  uint uVar13;\n  byte *pbVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  int *piVar19;\n  undefined4 *local_bc;\n  undefined4 *local_b8;\n  undefined4 *local_b4;\n  byte *local_b0;\n  uint local_ac;\n  byte *local_a8;\n  undefined4 *local_a4;\n  uint local_98;\n  undefined4 *local_8c;\n  byte *local_88;\n  undefined4 *local_78;\n  int local_6c;\n  int local_68;\n  int local_64;\n  int local_60;\n  undefined1 local_5c [72];\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x31289;\n  pbVar14 = *(byte **)(param_1 + 0x10);\n  puVar3 = *(undefined4 **)(param_1 + 0x1c);\n  if (pbVar14 == (byte *)0x0) {\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is empty\n";\n  }\n  else {\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }\nLAB_0003156a:\n  local_bc = (undefined4 *)0x5;\n  uVar9 = dcgettext(0,pcVar7,5);\nLAB_000314f3:\n  warn(uVar9,pbVar14,local_bc);\n  return 0;\nLAB_0003165a:\n  if (pbVar1 < local_88 + 8) {\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }\n  piVar19 = &local_64;\n  FUN_000490b0(local_88,&local_6c,piVar19);\n  if ((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)) {\n    iVar8 = 4;\n    if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }\n    if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }\n    if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }\nLAB_0003168c:\n  local_b8 = (undefined4 *)((int)local_b8 + 1);\n  local_88 = local_88 + 8;\n  local_b0 = local_b0 + 4;\n  if (local_bc <= local_b8) goto LAB_000316a3;\n  goto LAB_0003165a;\nLAB_000317d8:\n  if (param_2 == 0) {\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }\n  else {\n    putchar(10);\n  }\n  goto LAB_0003168c;\n  while( true ) {\n    iVar8 = iVar8 + -1;\n    bVar16 = *pbVar14 < *pbVar15;\n    bVar17 = *pbVar14 == *pbVar15;\n    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;\n    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n    if (!bVar17) break;\ncode_r0x00031991:\n    if (iVar8 == 0) break;\n  }\n  bVar17 = !bVar16 && !bVar17;\n  if (param_2 == 0) {\n    if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }\n    if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }\n  }\n  else {\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }\n  local_b4 = (undefined4 *)0x0;\n  pbVar14 = local_b0;\n  do {\n    if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }\n    if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined4 *)((int)local_b4 + 1);\n    local_88 = local_88 + 8;\n    pbVar14 = pbVar14 + 4;\n  } while (local_b4 < local_bc);\nLAB_000316a3:\n  if (param_2 == 0) {\n    return 1;\n  }\nLAB_000316b0:\n  putchar(10);\n  return 1;\n}" { (declaration "byte *pbVar1;" type_identifier (pointer_declarator "*pbVar1" * identifier) ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "undefined4 *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "undefined4 *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "byte *pbVar5;" type_identifier (pointer_declarator "*pbVar5" * identifier) ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "undefined4 uVar9;" type_identifier identifier ;) (declaration "byte *extraout_ECX;" type_identifier (pointer_declarator "*extraout_ECX" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "byte *pbVar11;" type_identifier (pointer_declarator "*pbVar11" * identifier) ;) (declaration "byte *pbVar12;" type_identifier (pointer_declarator "*pbVar12" * identifier) ;) (declaration "uint uVar13;" type_identifier identifier ;) (declaration "byte *pbVar14;" type_identifier (pointer_declarator "*pbVar14" * identifier) ;) (declaration "byte *pbVar15;" type_identifier (pointer_declarator "*pbVar15" * identifier) ;) (declaration "bool bVar16;" primitive_type identifier ;) (declaration "bool bVar17;" primitive_type identifier ;) (declaration "byte bVar18;" type_identifier identifier ;) (declaration "int *piVar19;" primitive_type (pointer_declarator "*piVar19" * identifier) ;) (declaration "undefined4 *local_bc;" type_identifier (pointer_declarator "*local_bc" * identifier) ;) (declaration "undefined4 *local_b8;" type_identifier (pointer_declarator "*local_b8" * identifier) ;) (declaration "undefined4 *local_b4;" type_identifier (pointer_declarator "*local_b4" * identifier) ;) (declaration "byte *local_b0;" type_identifier (pointer_declarator "*local_b0" * identifier) ;) (declaration "uint local_ac;" type_identifier identifier ;) (declaration "byte *local_a8;" type_identifier (pointer_declarator "*local_a8" * identifier) ;) (declaration "undefined4 *local_a4;" type_identifier (pointer_declarator "*local_a4" * identifier) ;) (declaration "uint local_98;" type_identifier identifier ;) (declaration "undefined4 *local_8c;" type_identifier (pointer_declarator "*local_8c" * identifier) ;) (declaration "byte *local_88;" type_identifier (pointer_declarator "*local_88" * identifier) ;) (declaration "undefined4 *local_78;" type_identifier (pointer_declarator "*local_78" * identifier) ;) (declaration "int local_6c;" primitive_type identifier ;) (declaration "int local_68;" primitive_type identifier ;) (declaration "int local_64;" primitive_type identifier ;) (declaration "int local_60;" primitive_type identifier ;) (declaration "undefined1 local_5c [72];" type_identifier (array_declarator "local_5c [72]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "bVar18 = 0;" (assignment_expression "bVar18 = 0" identifier = number_literal) ;) (expression_statement "uStack_14 = 0x31289;" (assignment_expression "uStack_14 = 0x31289" identifier = number_literal) ;) (expression_statement "pbVar14 = *(byte **)(param_1 + 0x10);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 0x10)" identifier = (pointer_expression "*(byte **)(param_1 + 0x10)" * (cast_expression "(byte **)(param_1 + 0x10)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "puVar3 = *(undefined4 **)(param_1 + 0x1c);" (assignment_expression "puVar3 = *(undefined4 **)(param_1 + 0x1c)" identifier = (pointer_expression "*(undefined4 **)(param_1 + 0x1c)" * (cast_expression "(undefined4 **)(param_1 + 0x1c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) ))))) ;) (if_statement "if (pbVar14 == (byte *)0x0) {\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is empty\n";\n  }\n  else {\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }" if (parenthesized_expression "(pbVar14 == (byte *)0x0)" ( (binary_expression "pbVar14 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is empty\n";\n  }" { (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" identifier = (pointer_expression "*(byte **)(param_1 + 8)" * (cast_expression "(byte **)(param_1 + 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "pcVar7 = "Section %s is empty\n";" (assignment_expression "pcVar7 = "Section %s is empty\n"" identifier = (string_literal ""Section %s is empty\n"" " string_content escape_sequence ")) ;) }) (else_clause "else {\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }" else (compound_statement "{\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }" { (if_statement "if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3))" ( (binary_expression "*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)" (binary_expression "*(int *)(param_1 + 0x20) != 0" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) != number_literal) || (binary_expression "(uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)" (binary_expression "(uint)-*(int *)(param_1 + 0x20)" (parenthesized_expression "(uint)" ( identifier )) - (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) < (call_expression "(uint)((undefined4 *)0x17 < puVar3)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((undefined4 *)0x17 < puVar3)" ( (binary_expression "(undefined4 *)0x17 < puVar3" (cast_expression "(undefined4 *)0x17" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < identifier) ))))) )) (compound_statement "{\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }" { (expression_statement "local_b0 = pbVar14 + 8;" (assignment_expression "local_b0 = pbVar14 + 8" identifier = (binary_expression "pbVar14 + 8" identifier + number_literal)) ;) (expression_statement "pbVar1 = pbVar14 + (int)puVar3;" (assignment_expression "pbVar1 = pbVar14 + (int)puVar3" identifier = (binary_expression "pbVar14 + (int)puVar3" identifier + (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "pbVar5 = pbVar14 + 4;" (assignment_expression "pbVar5 = pbVar14 + 4" identifier = (binary_expression "pbVar14 + 4" identifier + number_literal)) ;) (if_statement "if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" if (parenthesized_expression "(pbVar5 < pbVar1)" ( (binary_expression "pbVar5 < pbVar1" identifier < identifier) )) (compound_statement "{\n        puVar4 = (undefined4 *)0x4;\n      }" { (expression_statement "puVar4 = (undefined4 *)0x4;" (assignment_expression "puVar4 = (undefined4 *)0x4" identifier = (cast_expression "(undefined4 *)0x4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" else (if_statement "if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" if (parenthesized_expression "((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U))" ( (binary_expression "(pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)" (parenthesized_expression "(pbVar1 <= pbVar14)" ( (binary_expression "pbVar1 <= pbVar14" identifier <= identifier) )) || (parenthesized_expression "(puVar4 = puVar3, 7 < (int)puVar3 - 1U)" ( (comma_expression "puVar4 = puVar3, 7 < (int)puVar3 - 1U" (assignment_expression "puVar4 = puVar3" identifier = identifier) , (binary_expression "7 < (int)puVar3 - 1U" number_literal < (binary_expression "(int)puVar3 - 1U" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal))) ))) )) (compound_statement "{\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" { (expression_statement "local_ac = 0;" (assignment_expression "local_ac = 0" identifier = number_literal) ;) (expression_statement "local_b8 = (undefined4 *)0x0;" (assignment_expression "local_b8 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_000313d0;" goto statement_identifier ;) })))) (expression_statement "local_bc = &DAT_00076b4c;" (assignment_expression "local_bc = &DAT_00076b4c" identifier = (pointer_expression "&DAT_00076b4c" & identifier)) ;) (expression_statement "local_ac = (*DAT_00076b4c)(pbVar14,puVar4);" (assignment_expression "local_ac = (*DAT_00076b4c)(pbVar14,puVar4)" identifier = (call_expression "(*DAT_00076b4c)(pbVar14,puVar4)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar14,puVar4)" ( identifier , identifier )))) ;) (if_statement "if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" if (parenthesized_expression "(local_ac < 2)" ( (binary_expression "local_ac < 2" identifier < number_literal) )) (compound_statement "{\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" { (expression_statement "local_b8 = (undefined4 *)0x0;" (assignment_expression "local_b8 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_000313d0;" goto statement_identifier ;) })) (if_statement "if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }" if (parenthesized_expression "(local_b0 < pbVar1)" ( (binary_expression "local_b0 < pbVar1" identifier < identifier) )) (compound_statement "{\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }" { (expression_statement "puVar4 = (undefined4 *)0x4;" (assignment_expression "puVar4 = (undefined4 *)0x4" identifier = (cast_expression "(undefined4 *)0x4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_0003153d;" goto statement_identifier ;) })) (if_statement "if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;" if (parenthesized_expression "((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8))" ( (binary_expression "(pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)" (parenthesized_expression "(pbVar5 < pbVar1)" ( (binary_expression "pbVar5 < pbVar1" identifier < identifier) )) && (parenthesized_expression "((int)puVar3 - 5U < 8)" ( (binary_expression "(int)puVar3 - 5U < 8" (binary_expression "(int)puVar3 - 5U" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal) < number_literal) ))) )) (goto_statement "goto LAB_000323ac;" goto statement_identifier ;)) (expression_statement "pbVar5 = pbVar14 + 0xc;" (assignment_expression "pbVar5 = pbVar14 + 0xc" identifier = (binary_expression "pbVar14 + 0xc" identifier + number_literal)) ;) (expression_statement "local_b8 = (undefined4 *)0x0;" (assignment_expression "local_b8 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (pbVar5 < pbVar1) goto LAB_000313e1;" if (parenthesized_expression "(pbVar5 < pbVar1)" ( (binary_expression "pbVar5 < pbVar1" identifier < identifier) )) (goto_statement "goto LAB_000313e1;" goto statement_identifier ;)) (labeled_statement "LAB_00031338:\n      local_b0 = pbVar14 + 0x10;" statement_identifier : (expression_statement "local_b0 = pbVar14 + 0x10;" (assignment_expression "local_b0 = pbVar14 + 0x10" identifier = (binary_expression "pbVar14 + 0x10" identifier + number_literal)) ;)) (if_statement "if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }" if (parenthesized_expression "(local_b0 < pbVar1)" ( (binary_expression "local_b0 < pbVar1" identifier < identifier) )) (compound_statement "{\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }" { (expression_statement "local_98 = 0;" (assignment_expression "local_98 = 0" identifier = number_literal) ;) (expression_statement "puVar3 = (undefined4 *)0x4;" (assignment_expression "puVar3 = (undefined4 *)0x4" identifier = (cast_expression "(undefined4 *)0x4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_0003148f;" goto statement_identifier ;) })) (expression_statement "local_98 = 0;" (assignment_expression "local_98 = 0" identifier = number_literal) ;) (labeled_statement "LAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }" statement_identifier : (if_statement "if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }" if (parenthesized_expression "(pbVar14 <= local_b0)" ( (binary_expression "pbVar14 <= local_b0" identifier <= identifier) )) (compound_statement "{\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }" { (expression_statement "local_88 = local_b0;" (assignment_expression "local_88 = local_b0" identifier = identifier) ;) (expression_statement "local_a8 = local_b0;" (assignment_expression "local_a8 = local_b0" identifier = identifier) ;) (expression_statement "local_bc = (undefined4 *)0x0;" (assignment_expression "local_bc = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );" do (compound_statement "{\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        }" { (if_statement "if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (compound_statement "{\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }" { (expression_statement "FUN_0001ec20();" (call_expression "FUN_0001ec20()" identifier (argument_list "()" ( ))) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Version:                 %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Version:                 %d\n",5)" identifier (argument_list "(0,"  Version:                 %d\n",5)" ( number_literal , (string_literal ""  Version:                 %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_ac);" (call_expression "printf(pcVar7,local_ac)" identifier (argument_list "(pcVar7,local_ac)" ( identifier , identifier ))) ;) (if_statement "if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }" if (parenthesized_expression "(1 < local_ac)" ( (binary_expression "1 < local_ac" number_literal < identifier) )) (compound_statement "{\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }" { (expression_statement "pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Number of columns:       %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Number of columns:       %d\n",5)" identifier (argument_list "(0,"  Number of columns:       %d\n",5)" ( number_literal , (string_literal ""  Number of columns:       %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_b8);" (call_expression "printf(pcVar7,local_b8)" identifier (argument_list "(pcVar7,local_b8)" ( identifier , identifier ))) ;) })) (expression_statement "pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Number of used entries:  %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Number of used entries:  %d\n",5)" identifier (argument_list "(0,"  Number of used entries:  %d\n",5)" ( number_literal , (string_literal ""  Number of used entries:  %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_98);" (call_expression "printf(pcVar7,local_98)" identifier (argument_list "(pcVar7,local_98)" ( identifier , identifier ))) ;) (expression_statement "puVar3 = (undefined4 *)0x0;" (assignment_expression "puVar3 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Number of slots:         %d\n\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Number of slots:         %d\n\n",5)" identifier (argument_list "(0,"  Number of slots:         %d\n\n",5)" ( number_literal , (string_literal ""  Number of slots:         %d\n\n"" " string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_bc);" (call_expression "printf(pcVar7,local_bc)" identifier (argument_list "(pcVar7,local_bc)" ( identifier , identifier ))) ;) })) (if_statement "if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }" if (parenthesized_expression "(pbVar1 < local_a8)" ( (binary_expression "pbVar1 < local_a8" identifier < identifier) )) (compound_statement "{\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }" { (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" identifier = (pointer_expression "*(byte **)(param_1 + 8)" * (cast_expression "(byte **)(param_1 + 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5)" identifier = (call_expression "dcgettext(0,"Section %s too small for %d hash table entries\n",5)" identifier (argument_list "(0,"Section %s too small for %d hash table entries\n",5)" ( number_literal , (string_literal ""Section %s too small for %d hash table entries\n"" " string_content escape_sequence ") , number_literal )))) ;) (goto_statement "goto LAB_000314f3;" goto statement_identifier ;) })) (if_statement "if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }" if (parenthesized_expression "(local_ac != 1)" ( (binary_expression "local_ac != 1" identifier != number_literal) )) (compound_statement "{\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }" { (if_statement "if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }" if (parenthesized_expression "(local_ac != 2)" ( (binary_expression "local_ac != 2" identifier != number_literal) )) (compound_statement "{\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }" { (if_statement "if (param_2 == 0) {\n                return 1;\n              }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n                return 1;\n              }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Unsupported version (%d)\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Unsupported version (%d)\n",5)" identifier (argument_list "(0,"  Unsupported version (%d)\n",5)" ( number_literal , (string_literal ""  Unsupported version (%d)\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_ac);" (call_expression "printf(pcVar7,local_ac)" identifier (argument_list "(pcVar7,local_ac)" ( identifier , identifier ))) ;) (goto_statement "goto LAB_000316b0;" goto statement_identifier ;) })) (expression_statement "uVar2 = (int)local_b8 * 4;" (assignment_expression "uVar2 = (int)local_b8 * 4" identifier = (binary_expression "(int)local_b8 * 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pbVar5 = local_a8 + uVar2;" (assignment_expression "pbVar5 = local_a8 + uVar2" identifier = (binary_expression "local_a8 + uVar2" identifier + identifier)) ;) (if_statement "if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }" if (parenthesized_expression "(!CARRY4((uint)local_a8,uVar2))" ( (unary_expression "!CARRY4((uint)local_a8,uVar2)" ! (call_expression "CARRY4((uint)local_a8,uVar2)" identifier (argument_list "((uint)local_a8,uVar2)" ( (cast_expression "(uint)local_a8" ( (type_descriptor "uint" type_identifier) ) identifier) , identifier )))) )) (compound_statement "{\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }" { (expression_statement "uVar6 = uVar2 + 3;" (assignment_expression "uVar6 = uVar2 + 3" identifier = (binary_expression "uVar2 + 3" identifier + number_literal)) ;) (if_statement "if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }" if (parenthesized_expression "(-1 < (int)uVar2)" ( (binary_expression "-1 < (int)uVar2" number_literal < (cast_expression "(int)uVar2" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                uVar6 = uVar2;\n              }" { (expression_statement "uVar6 = uVar2;" (assignment_expression "uVar6 = uVar2" identifier = identifier) ;) })) (if_statement "if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }" if (parenthesized_expression "((undefined4 *)((int)uVar6 >> 2) == local_b8)" ( (binary_expression "(undefined4 *)((int)uVar6 >> 2) == local_b8" (cast_expression "(undefined4 *)((int)uVar6 >> 2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)uVar6 >> 2)" ( (binary_expression "(int)uVar6 >> 2" (cast_expression "(int)uVar6" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) ))) == identifier) )) (compound_statement "{\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }" { (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" identifier = (pointer_expression "*(byte **)(param_1 + 8)" * (cast_expression "(byte **)(param_1 + 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;" (assignment_expression "bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2" identifier = (binary_expression "pbVar1 < pbVar5 + uVar2 * local_98 * 2" identifier < (binary_expression "pbVar5 + uVar2 * local_98 * 2" identifier + (binary_expression "uVar2 * local_98 * 2" (binary_expression "uVar2 * local_98" identifier * identifier) * number_literal)))) ;) (expression_statement "bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;" (assignment_expression "bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2" identifier = (binary_expression "pbVar1 == pbVar5 + uVar2 * local_98 * 2" identifier == (binary_expression "pbVar5 + uVar2 * local_98 * 2" identifier + (binary_expression "uVar2 * local_98 * 2" (binary_expression "uVar2 * local_98" identifier * identifier) * number_literal)))) ;) (if_statement "if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }" if (parenthesized_expression "(!bVar16)" ( (unary_expression "!bVar16" ! identifier) )) (compound_statement "{\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }" { (expression_statement "iVar8 = 0x10;" (assignment_expression "iVar8 = 0x10" identifier = number_literal) ;) (expression_statement "pbVar15 = (byte *)".debug_tu_index";" (assignment_expression "pbVar15 = (byte *)".debug_tu_index"" identifier = (cast_expression "(byte *)".debug_tu_index"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_tu_index"" " string_content "))) ;) (goto_statement "goto code_r0x00031991;" goto statement_identifier ;) })) (expression_statement "pcVar7 = "Section %s too small for offset and size tables\n";" (assignment_expression "pcVar7 = "Section %s too small for offset and size tables\n"" identifier = (string_literal ""Section %s too small for offset and size tables\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0003156a;" goto statement_identifier ;) })) })) (expression_statement "uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5)" identifier = (call_expression "dcgettext(0,"Overlarge number of columns: %x\n",5)" identifier (argument_list "(0,"Overlarge number of columns: %x\n",5)" ( number_literal , (string_literal ""Overlarge number of columns: %x\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar9,local_b8);" (call_expression "warn(uVar9,local_b8)" identifier (argument_list "(uVar9,local_b8)" ( identifier , identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) (if_statement "if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (compound_statement "{\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }" { (if_statement "if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;" if (parenthesized_expression "(local_bc == (undefined4 *)0x0)" ( (binary_expression "local_bc == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000316b0;" goto statement_identifier ;)) (labeled_statement "LAB_00031644:\n            local_b8 = (undefined4 *)0x0;" statement_identifier : (expression_statement "local_b8 = (undefined4 *)0x0;" (assignment_expression "local_b8 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (goto_statement "goto LAB_0003165a;" goto statement_identifier ;) })) (expression_statement "iVar10 = (int)pbVar1 - (int)local_a8;" (assignment_expression "iVar10 = (int)pbVar1 - (int)local_a8" identifier = (binary_expression "(int)pbVar1 - (int)local_a8" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "iVar8 = iVar10 + 3;" (assignment_expression "iVar8 = iVar10 + 3" identifier = (binary_expression "iVar10 + 3" identifier + number_literal)) ;) (if_statement "if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }" if (parenthesized_expression "(-1 < iVar10)" ( (binary_expression "-1 < iVar10" number_literal < identifier) )) (compound_statement "{\n            iVar8 = iVar10;\n          }" { (expression_statement "iVar8 = iVar10;" (assignment_expression "iVar8 = iVar10" identifier = identifier) ;) })) (expression_statement "DAT_00076924 = iVar8 >> 2;" (assignment_expression "DAT_00076924 = iVar8 >> 2" identifier = (binary_expression "iVar8 >> 2" identifier >> number_literal)) ;) (if_statement "if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }" if (parenthesized_expression "(DAT_00076928 == 0)" ( (binary_expression "DAT_00076928 == 0" identifier == number_literal) )) (compound_statement "{\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }" { (expression_statement "DAT_00076920 = 0;" (assignment_expression "DAT_00076920 = 0" identifier = number_literal) ;) (expression_statement "DAT_00076928 = FUN_0002dba0(DAT_00076924,4);" (assignment_expression "DAT_00076928 = FUN_0002dba0(DAT_00076924,4)" identifier = (call_expression "FUN_0002dba0(DAT_00076924,4)" identifier (argument_list "(DAT_00076924,4)" ( identifier , number_literal )))) ;) (labeled_statement "LAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }" statement_identifier : (if_statement "if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }" if (parenthesized_expression "(local_bc == (undefined4 *)0x0)" ( (binary_expression "local_bc == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              return 1;\n            }" { (return_statement "return 1;" return number_literal ;) }))) (goto_statement "goto LAB_00031644;" goto statement_identifier ;) })) (expression_statement "DAT_00076924 = DAT_00076924 + DAT_00076920;" (assignment_expression "DAT_00076924 = DAT_00076924 + DAT_00076920" identifier = (binary_expression "DAT_00076924 + DAT_00076920" identifier + identifier)) ;) (if_statement "if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }" if (parenthesized_expression "(DAT_00076924 < 0x3fffffff)" ( (binary_expression "DAT_00076924 < 0x3fffffff" identifier < number_literal) )) (compound_statement "{\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }" { (expression_statement "DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);" (assignment_expression "DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4)" identifier = (call_expression "xrealloc(DAT_00076928,DAT_00076924 * 4)" identifier (argument_list "(DAT_00076928,DAT_00076924 * 4)" ( identifier , (binary_expression "DAT_00076924 * 4" identifier * number_literal) )))) ;) (goto_statement "goto LAB_00031d8a;" goto statement_identifier ;) })) (expression_statement "FUN_0001e980();" (call_expression "FUN_0001e980()" identifier (argument_list "()" ( ))) ;) (expression_statement "pbVar14 = (byte *)0x0;" (assignment_expression "pbVar14 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pbVar5 = extraout_ECX;" (assignment_expression "pbVar5 = extraout_ECX" identifier = identifier) ;) (labeled_statement "LAB_000323ac:\n          puVar4 = puVar3 + -1;" statement_identifier : (expression_statement "puVar4 = puVar3 + -1;" (assignment_expression "puVar4 = puVar3 + -1" identifier = (binary_expression "puVar3 + -1" identifier + number_literal)) ;)) (labeled_statement "LAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);" statement_identifier : (expression_statement "local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);" (assignment_expression "local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4)" identifier = (cast_expression "(undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)*local_bc)(pbVar5,puVar4)" (parenthesized_expression "(*(code *)*local_bc)" ( (pointer_expression "*(code *)*local_bc" * (cast_expression "(code *)*local_bc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_bc" * identifier))) )) (argument_list "(pbVar5,puVar4)" ( identifier , identifier ))))) ;)) (labeled_statement "LAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;" statement_identifier : (expression_statement "pbVar5 = pbVar14 + 0xc;" (assignment_expression "pbVar5 = pbVar14 + 0xc" identifier = (binary_expression "pbVar14 + 0xc" identifier + number_literal)) ;)) (if_statement "if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }" if (parenthesized_expression "(pbVar5 < pbVar1)" ( (binary_expression "pbVar5 < pbVar1" identifier < identifier) )) (compound_statement "{\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }" { (labeled_statement "LAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);" statement_identifier : (expression_statement "local_98 = (*DAT_00076b4c)(local_b0,4);" (assignment_expression "local_98 = (*DAT_00076b4c)(local_b0,4)" identifier = (call_expression "(*DAT_00076b4c)(local_b0,4)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(local_b0,4)" ( identifier , number_literal )))) ;)) (expression_statement "local_b0 = pbVar14 + 0x10;" (assignment_expression "local_b0 = pbVar14 + 0x10" identifier = (binary_expression "pbVar14 + 0x10" identifier + number_literal)) ;) (if_statement "if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }" if (parenthesized_expression "(local_b0 < pbVar1)" ( (binary_expression "local_b0 < pbVar1" identifier < identifier) )) (compound_statement "{\n              puVar3 = (undefined4 *)0x4;\n            }" { (expression_statement "puVar3 = (undefined4 *)0x4;" (assignment_expression "puVar3 = (undefined4 *)0x4" identifier = (cast_expression "(undefined4 *)0x4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }" else (compound_statement "{\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }" { (if_statement "if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;" if (parenthesized_expression "(7 < (int)puVar3 - 0xdU)" ( (binary_expression "7 < (int)puVar3 - 0xdU" number_literal < (binary_expression "(int)puVar3 - 0xdU" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal)) )) (goto_statement "goto LAB_0003134f;" goto statement_identifier ;)) (expression_statement "puVar3 = puVar3 + -3;" (assignment_expression "puVar3 = puVar3 + -3" identifier = (binary_expression "puVar3 + -3" identifier + number_literal)) ;) }))) }) (else_clause "else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }" else (compound_statement "{\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }" { (if_statement "if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;" if (parenthesized_expression "((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2))" ( (binary_expression "(pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)" (parenthesized_expression "(pbVar1 <= local_b0)" ( (binary_expression "pbVar1 <= local_b0" identifier <= identifier) )) || (parenthesized_expression "(uVar2 = (int)puVar3 - 9, 7 < uVar2)" ( (comma_expression "uVar2 = (int)puVar3 - 9, 7 < uVar2" (assignment_expression "uVar2 = (int)puVar3 - 9" identifier = (binary_expression "(int)puVar3 - 9" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal)) , (binary_expression "7 < uVar2" number_literal < identifier)) ))) )) (goto_statement "goto LAB_00031338;" goto statement_identifier ;)) (expression_statement "puVar3 = puVar3 + -2;" (assignment_expression "puVar3 = puVar3 + -2" identifier = (binary_expression "puVar3 + -2" identifier + number_literal)) ;) (expression_statement "local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);" (assignment_expression "local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2)" identifier = (call_expression "(*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(local_b0,puVar3,uVar2,uVar2)" ( identifier , identifier , identifier , identifier )))) ;) (expression_statement "local_b0 = pbVar14 + 0x10;" (assignment_expression "local_b0 = pbVar14 + 0x10" identifier = (binary_expression "pbVar14 + 0x10" identifier + number_literal)) ;) (if_statement "if (pbVar1 <= local_b0) goto LAB_0003134f;" if (parenthesized_expression "(pbVar1 <= local_b0)" ( (binary_expression "pbVar1 <= local_b0" identifier <= identifier) )) (goto_statement "goto LAB_0003134f;" goto statement_identifier ;)) (expression_statement "puVar3 = (undefined4 *)0x4;" (assignment_expression "puVar3 = (undefined4 *)0x4" identifier = (cast_expression "(undefined4 *)0x4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (labeled_statement "LAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);" statement_identifier : (expression_statement "puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);" (assignment_expression "puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3)" identifier = (cast_expression "(undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*DAT_00076b4c)(pbVar5,puVar3)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar5,puVar3)" ( identifier , identifier ))))) ;)) (expression_statement "pbVar5 = local_b0 + (int)puVar3 * 8;" (assignment_expression "pbVar5 = local_b0 + (int)puVar3 * 8" identifier = (binary_expression "local_b0 + (int)puVar3 * 8" identifier + (binary_expression "(int)puVar3 * 8" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "local_a8 = pbVar5 + (int)puVar3 * 4;" (assignment_expression "local_a8 = pbVar5 + (int)puVar3 * 4" identifier = (binary_expression "pbVar5 + (int)puVar3 * 4" identifier + (binary_expression "(int)puVar3 * 4" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "local_bc = puVar3;" (assignment_expression "local_bc = puVar3" identifier = identifier) ;) (if_statement "if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;" if (parenthesized_expression "(((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0))))" ( (binary_expression "((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))" (parenthesized_expression "((pbVar5 < local_b0) || (local_a8 < pbVar14))" ( (binary_expression "(pbVar5 < local_b0) || (local_a8 < pbVar14)" (parenthesized_expression "(pbVar5 < local_b0)" ( (binary_expression "pbVar5 < local_b0" identifier < identifier) )) || (parenthesized_expression "(local_a8 < pbVar14)" ( (binary_expression "local_a8 < pbVar14" identifier < identifier) ))) )) || (parenthesized_expression "((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))" ( (parenthesized_expression "(pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0))" ( (binary_expression "pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)" (binary_expression "pbVar5 == local_b0" identifier == identifier) && (parenthesized_expression "(puVar3 != (undefined4 *)0x0)" ( (binary_expression "puVar3 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) ))) )) (goto_statement "goto LAB_000314c9;" goto statement_identifier ;)) (expression_statement "local_88 = local_b0;" (assignment_expression "local_88 = local_b0" identifier = identifier) ;) (expression_statement "local_b0 = pbVar5;" (assignment_expression "local_b0 = pbVar5" identifier = identifier) ;) }) while (parenthesized_expression "( true )" ( true )) ;) }))) (expression_statement "local_bc = (undefined4 *)0x0;" (assignment_expression "local_bc = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);" statement_identifier : (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" identifier = (pointer_expression "*(byte **)(param_1 + 8)" * (cast_expression "(byte **)(param_1 + 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;)) (expression_statement "uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);" (assignment_expression "uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5)" identifier = (call_expression "dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5)" identifier (argument_list "(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5)" ( number_literal , (string_literal ""Section %s is too small for %d slot\n"" " string_content escape_sequence ") , (string_literal ""Section %s is too small for %d slots\n"" " string_content escape_sequence ") , identifier , number_literal )))) ;) (goto_statement "goto LAB_000314f3;" goto statement_identifier ;) })) (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" identifier = (pointer_expression "*(byte **)(param_1 + 8)" * (cast_expression "(byte **)(param_1 + 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "pcVar7 = "Section %s is too small to contain a CU/TU header\n";" (assignment_expression "pcVar7 = "Section %s is too small to contain a CU/TU header\n"" identifier = (string_literal ""Section %s is too small to contain a CU/TU header\n"" " string_content escape_sequence ")) ;) }))) (labeled_statement "LAB_0003156a:\n  local_bc = (undefined4 *)0x5;" statement_identifier : (expression_statement "local_bc = (undefined4 *)0x5;" (assignment_expression "local_bc = (undefined4 *)0x5" identifier = (cast_expression "(undefined4 *)0x5" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "uVar9 = dcgettext(0,pcVar7,5);" (assignment_expression "uVar9 = dcgettext(0,pcVar7,5)" identifier = (call_expression "dcgettext(0,pcVar7,5)" identifier (argument_list "(0,pcVar7,5)" ( number_literal , identifier , number_literal )))) ;) (labeled_statement "LAB_000314f3:\n  warn(uVar9,pbVar14,local_bc);" statement_identifier : (expression_statement "warn(uVar9,pbVar14,local_bc);" (call_expression "warn(uVar9,pbVar14,local_bc)" identifier (argument_list "(uVar9,pbVar14,local_bc)" ( identifier , identifier , identifier ))) ;)) (return_statement "return 0;" return number_literal ;) (labeled_statement "LAB_0003165a:\n  if (pbVar1 < local_88 + 8) {\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }" statement_identifier : (if_statement "if (pbVar1 < local_88 + 8) {\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }" if (parenthesized_expression "(pbVar1 < local_88 + 8)" ( (binary_expression "pbVar1 < local_88 + 8" identifier < (binary_expression "local_88 + 8" identifier + number_literal)) )) (compound_statement "{\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }" { (expression_statement "local_6c = 0;" (assignment_expression "local_6c = 0" identifier = number_literal) ;) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" identifier = number_literal) ;) (expression_statement "local_64 = 0;" (assignment_expression "local_64 = 0" identifier = number_literal) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0003168c;" goto statement_identifier ;) }))) (expression_statement "piVar19 = &local_64;" (assignment_expression "piVar19 = &local_64" identifier = (pointer_expression "&local_64" & identifier)) ;) (expression_statement "FUN_000490b0(local_88,&local_6c,piVar19);" (call_expression "FUN_000490b0(local_88,&local_6c,piVar19)" identifier (argument_list "(local_88,&local_6c,piVar19)" ( identifier , (pointer_expression "&local_6c" & identifier) , identifier ))) ;) (if_statement "if ((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)) {\n    iVar8 = 4;\n    if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }\n    if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }\n    if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }" if (parenthesized_expression "((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0))" ( (binary_expression "(local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)" (parenthesized_expression "(local_68 != 0 || local_6c != 0)" ( (binary_expression "local_68 != 0 || local_6c != 0" (binary_expression "local_68 != 0" identifier != number_literal) || (binary_expression "local_6c != 0" identifier != number_literal)) )) || (parenthesized_expression "(local_60 != 0 || local_64 != 0)" ( (binary_expression "local_60 != 0 || local_64 != 0" (binary_expression "local_60 != 0" identifier != number_literal) || (binary_expression "local_64 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n    iVar8 = 4;\n    if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }\n    if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }\n    if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (if_statement "if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }" if (parenthesized_expression "((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8))))" ( (binary_expression "(local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))" (parenthesized_expression "(local_b0 + 4 < pbVar1)" ( (binary_expression "local_b0 + 4 < pbVar1" (binary_expression "local_b0 + 4" identifier + number_literal) < identifier) )) || (parenthesized_expression "((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))" ( (parenthesized_expression "(pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8))" ( (comma_expression "pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)" (assignment_expression "pbVar14 = local_a8" identifier = identifier) , (binary_expression "local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)" (binary_expression "local_b0 < pbVar1" identifier < identifier) && (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)" ( (comma_expression "iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)local_b0" identifier = (binary_expression "(int)pbVar1 - (int)local_b0" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" identifier - number_literal) < number_literal)) )))) )) ))) )) (compound_statement "{\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }" { (expression_statement "iVar8 = (*DAT_00076b4c)(local_b0,iVar8);" (assignment_expression "iVar8 = (*DAT_00076b4c)(local_b0,iVar8)" identifier = (call_expression "(*DAT_00076b4c)(local_b0,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(local_b0,iVar8)" ( identifier , identifier )))) ;) (expression_statement "pbVar14 = local_a8 + iVar8 * 4;" (assignment_expression "pbVar14 = local_a8 + iVar8 * 4" identifier = (binary_expression "local_a8 + iVar8 * 4" identifier + (binary_expression "iVar8 * 4" identifier * number_literal))) ;) (if_statement "if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }" if (parenthesized_expression "(local_a8 + iVar8 * 4 < local_a8)" ( (binary_expression "local_a8 + iVar8 * 4 < local_a8" (binary_expression "local_a8 + iVar8 * 4" identifier + (binary_expression "iVar8 * 4" identifier * number_literal)) < identifier) )) (compound_statement "{\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }" { (expression_statement "uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Section index pool located before start of section\n",5)" identifier = (call_expression "dcgettext(0,"Section index pool located before start of section\n",5)" identifier (argument_list "(0,"Section index pool located before start of section\n",5)" ( number_literal , (string_literal ""Section index pool located before start of section\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar9);" (call_expression "warn(uVar9)" identifier (argument_list "(uVar9)" ( identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) })) (if_statement "if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (compound_statement "{\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }" { (expression_statement "piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);" (assignment_expression "piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c)" identifier = (cast_expression "(int *)FUN_0001eb80(local_64,local_60,local_5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001eb80(local_64,local_60,local_5c)" identifier (argument_list "(local_64,local_60,local_5c)" ( identifier , identifier , identifier ))))) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5)" identifier (argument_list "(0,"  [%3d] Signature:  0x%s  Sections: ",5)" ( number_literal , (string_literal ""  [%3d] Signature:  0x%s  Sections: "" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_b8,piVar19);" (call_expression "printf(pcVar7,local_b8,piVar19)" identifier (argument_list "(pcVar7,local_b8,piVar19)" ( identifier , identifier , identifier ))) ;) })) (if_statement "if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }" if (parenthesized_expression "(pbVar14 < pbVar1)" ( (binary_expression "pbVar14 < pbVar1" identifier < identifier) )) (compound_statement "{\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }" { (do_statement "do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );" do (compound_statement "{\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      }" { (expression_statement "pbVar5 = pbVar14 + 4;" (assignment_expression "pbVar5 = pbVar14 + 4" identifier = (binary_expression "pbVar14 + 4" identifier + number_literal)) ;) (if_statement "if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }" if (parenthesized_expression "(pbVar5 < pbVar1)" ( (binary_expression "pbVar5 < pbVar1" identifier < identifier) )) (compound_statement "{\n          iVar8 = 4;\n        }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) }) (else_clause "else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }" else (compound_statement "{\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }" { (expression_statement "iVar8 = (int)pbVar1 - (int)pbVar14;" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar14" identifier = (binary_expression "(int)pbVar1 - (int)pbVar14" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar14" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (7 < iVar8 - 1U) goto LAB_000317d8;" if (parenthesized_expression "(7 < iVar8 - 1U)" ( (binary_expression "7 < iVar8 - 1U" number_literal < (binary_expression "iVar8 - 1U" identifier - number_literal)) )) (goto_statement "goto LAB_000317d8;" goto statement_identifier ;)) }))) (expression_statement "iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);" (assignment_expression "iVar8 = (*DAT_00076b4c)(pbVar14,iVar8)" identifier = (call_expression "(*DAT_00076b4c)(pbVar14,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar14,iVar8)" ( identifier , identifier )))) ;) (if_statement "if (iVar8 == 0) goto LAB_000317d8;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000317d8;" goto statement_identifier ;)) (if_statement "if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }" { (if_statement "if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }" if (parenthesized_expression "(DAT_00076920 < DAT_00076924)" ( (binary_expression "DAT_00076920 < DAT_00076924" identifier < identifier) )) (compound_statement "{\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }" { (expression_statement "iVar10 = DAT_00076920 * 4;" (assignment_expression "iVar10 = DAT_00076920 * 4" identifier = (binary_expression "DAT_00076920 * 4" identifier * number_literal)) ;) (expression_statement "DAT_00076920 = DAT_00076920 + 1;" (assignment_expression "DAT_00076920 = DAT_00076920 + 1" identifier = (binary_expression "DAT_00076920 + 1" identifier + number_literal)) ;) (expression_statement "*(int *)(DAT_00076928 + iVar10) = iVar8;" (assignment_expression "*(int *)(DAT_00076928 + iVar10) = iVar8" (pointer_expression "*(int *)(DAT_00076928 + iVar10)" * (cast_expression "(int *)(DAT_00076928 + iVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_00076928 + iVar10)" ( (binary_expression "DAT_00076928 + iVar10" identifier + identifier) )))) = identifier) ;) }) (else_clause "else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }" else (compound_statement "{\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }" { (expression_statement "piVar19 = (int *)0x5;" (assignment_expression "piVar19 = (int *)0x5" identifier = (cast_expression "(int *)0x5" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");" (assignment_expression "uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n")" identifier = (call_expression "dcgettext(0,"Internal error: out of space in the shndx pool.\n")" identifier (argument_list "(0,"Internal error: out of space in the shndx pool.\n")" ( number_literal , (string_literal ""Internal error: out of space in the shndx pool.\n"" " string_content escape_sequence ") )))) ;) (expression_statement "error(uVar9);" (call_expression "error(uVar9)" identifier (argument_list "(uVar9)" ( identifier ))) ;) }))) }) (else_clause "else {\n          printf(" %d",iVar8,piVar19);\n        }" else (compound_statement "{\n          printf(" %d",iVar8,piVar19);\n        }" { (expression_statement "printf(" %d",iVar8,piVar19);" (call_expression "printf(" %d",iVar8,piVar19)" identifier (argument_list "(" %d",iVar8,piVar19)" ( (string_literal "" %d"" " string_content ") , identifier , identifier ))) ;) }))) (expression_statement "pbVar14 = pbVar5;" (assignment_expression "pbVar14 = pbVar5" identifier = identifier) ;) (if_statement "if (pbVar1 <= pbVar5) break;" if (parenthesized_expression "(pbVar1 <= pbVar5)" ( (binary_expression "pbVar1 <= pbVar5" identifier <= identifier) )) (break_statement "break;" break ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" identifier = (pointer_expression "*(byte **)(param_1 + 8)" * (cast_expression "(byte **)(param_1 + 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "pcVar7 = "Section %s too small for shndx pool\n";" (assignment_expression "pcVar7 = "Section %s too small for shndx pool\n"" identifier = (string_literal ""Section %s too small for shndx pool\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0003156a;" goto statement_identifier ;) })) (labeled_statement "LAB_0003168c:\n  local_b8 = (undefined4 *)((int)local_b8 + 1);" statement_identifier : (expression_statement "local_b8 = (undefined4 *)((int)local_b8 + 1);" (assignment_expression "local_b8 = (undefined4 *)((int)local_b8 + 1)" identifier = (cast_expression "(undefined4 *)((int)local_b8 + 1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + 1)" ( (binary_expression "(int)local_b8 + 1" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;)) (expression_statement "local_88 = local_88 + 8;" (assignment_expression "local_88 = local_88 + 8" identifier = (binary_expression "local_88 + 8" identifier + number_literal)) ;) (expression_statement "local_b0 = local_b0 + 4;" (assignment_expression "local_b0 = local_b0 + 4" identifier = (binary_expression "local_b0 + 4" identifier + number_literal)) ;) (if_statement "if (local_bc <= local_b8) goto LAB_000316a3;" if (parenthesized_expression "(local_bc <= local_b8)" ( (binary_expression "local_bc <= local_b8" identifier <= identifier) )) (goto_statement "goto LAB_000316a3;" goto statement_identifier ;)) (goto_statement "goto LAB_0003165a;" goto statement_identifier ;) (labeled_statement "LAB_000317d8:\n  if (param_2 == 0) {\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }\n  else {\n    putchar(10);\n  }" statement_identifier : (if_statement "if (param_2 == 0) {\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }\n  else {\n    putchar(10);\n  }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }" { (if_statement "if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }" if (parenthesized_expression "(DAT_00076920 < DAT_00076924)" ( (binary_expression "DAT_00076920 < DAT_00076924" identifier < identifier) )) (compound_statement "{\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }" { (expression_statement "iVar8 = DAT_00076920 * 4;" (assignment_expression "iVar8 = DAT_00076920 * 4" identifier = (binary_expression "DAT_00076920 * 4" identifier * number_literal)) ;) (expression_statement "DAT_00076920 = DAT_00076920 + 1;" (assignment_expression "DAT_00076920 = DAT_00076920 + 1" identifier = (binary_expression "DAT_00076920 + 1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(DAT_00076928 + iVar8) = 0;" (assignment_expression "*(undefined4 *)(DAT_00076928 + iVar8) = 0" (pointer_expression "*(undefined4 *)(DAT_00076928 + iVar8)" * (cast_expression "(undefined4 *)(DAT_00076928 + iVar8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_00076928 + iVar8)" ( (binary_expression "DAT_00076928 + iVar8" identifier + identifier) )))) = number_literal) ;) }) (else_clause "else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }" else (compound_statement "{\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }" { (expression_statement "uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5)" identifier = (call_expression "dcgettext(0,"Internal error: out of space in the shndx pool.\n",5)" identifier (argument_list "(0,"Internal error: out of space in the shndx pool.\n",5)" ( number_literal , (string_literal ""Internal error: out of space in the shndx pool.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(uVar9);" (call_expression "error(uVar9)" identifier (argument_list "(uVar9)" ( identifier ))) ;) }))) }) (else_clause "else {\n    putchar(10);\n  }" else (compound_statement "{\n    putchar(10);\n  }" { (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) })))) (goto_statement "goto LAB_0003168c;" goto statement_identifier ;) (while_statement "while( true ) {\n    iVar8 = iVar8 + -1;\n    bVar16 = *pbVar14 < *pbVar15;\n    bVar17 = *pbVar14 == *pbVar15;\n    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;\n    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n    if (!bVar17) break;\ncode_r0x00031991:\n    if (iVar8 == 0) break;\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    iVar8 = iVar8 + -1;\n    bVar16 = *pbVar14 < *pbVar15;\n    bVar17 = *pbVar14 == *pbVar15;\n    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;\n    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n    if (!bVar17) break;\ncode_r0x00031991:\n    if (iVar8 == 0) break;\n  }" { (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar16 = *pbVar14 < *pbVar15;" (assignment_expression "bVar16 = *pbVar14 < *pbVar15" identifier = (binary_expression "*pbVar14 < *pbVar15" (pointer_expression "*pbVar14" * identifier) < (pointer_expression "*pbVar15" * identifier))) ;) (expression_statement "bVar17 = *pbVar14 == *pbVar15;" (assignment_expression "bVar17 = *pbVar14 == *pbVar15" identifier = (binary_expression "*pbVar14 == *pbVar15" (pointer_expression "*pbVar14" * identifier) == (pointer_expression "*pbVar15" * identifier))) ;) (expression_statement "pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;" (assignment_expression "pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1" identifier = (binary_expression "pbVar14 + (uint)bVar18 * -2 + 1" (binary_expression "pbVar14 + (uint)bVar18 * -2" identifier + (binary_expression "(uint)bVar18 * -2" (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;" (assignment_expression "pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1" identifier = (binary_expression "pbVar15 + (uint)bVar18 * -2 + 1" (binary_expression "pbVar15 + (uint)bVar18 * -2" identifier + (binary_expression "(uint)bVar18 * -2" (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (if_statement "if (!bVar17) break;" if (parenthesized_expression "(!bVar17)" ( (unary_expression "!bVar17" ! identifier) )) (break_statement "break;" break ;)) (labeled_statement "code_r0x00031991:\n    if (iVar8 == 0) break;" statement_identifier : (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;))) })) (expression_statement "bVar17 = !bVar16 && !bVar17;" (assignment_expression "bVar17 = !bVar16 && !bVar17" identifier = (binary_expression "!bVar16 && !bVar17" (unary_expression "!bVar16" ! identifier) && (unary_expression "!bVar17" ! identifier))) ;) (if_statement "if (param_2 == 0) {\n    if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }\n    if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }\n  }\n  else {\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n    if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }\n    if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }\n  }" { (if_statement "if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }" if (parenthesized_expression "(bVar17 == bVar16)" ( (binary_expression "bVar17 == bVar16" identifier == identifier) )) (compound_statement "{\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }" { (expression_statement "DAT_00076910 = local_98;" (assignment_expression "DAT_00076910 = local_98" identifier = identifier) ;) (expression_statement "local_78 = (undefined4 *)FUN_00031220(local_98,0x68);" (assignment_expression "local_78 = (undefined4 *)FUN_00031220(local_98,0x68)" identifier = (cast_expression "(undefined4 *)FUN_00031220(local_98,0x68)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00031220(local_98,0x68)" identifier (argument_list "(local_98,0x68)" ( identifier , number_literal ))))) ;) (expression_statement "DAT_00076908 = local_78;" (assignment_expression "DAT_00076908 = local_78" identifier = identifier) ;) }) (else_clause "else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }" else (compound_statement "{\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }" { (expression_statement "DAT_00076914 = local_98;" (assignment_expression "DAT_00076914 = local_98" identifier = identifier) ;) (expression_statement "local_78 = (undefined4 *)FUN_00031220(local_98,0x68);" (assignment_expression "local_78 = (undefined4 *)FUN_00031220(local_98,0x68)" identifier = (cast_expression "(undefined4 *)FUN_00031220(local_98,0x68)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00031220(local_98,0x68)" identifier (argument_list "(local_98,0x68)" ( identifier , number_literal ))))) ;) (expression_statement "DAT_0007690c = local_78;" (assignment_expression "DAT_0007690c = local_78" identifier = identifier) ;) }))) (if_statement "if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }" if (parenthesized_expression "(local_bc != (undefined4 *)0x0)" ( (binary_expression "local_bc != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }" { (labeled_statement "LAB_000319e5:\n      local_a4 = (undefined4 *)0x0;" statement_identifier : (expression_statement "local_a4 = (undefined4 *)0x0;" (assignment_expression "local_a4 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pbVar14 = local_88;" (assignment_expression "pbVar14 = local_88" identifier = identifier) ;) (expression_statement "pbVar15 = local_b0;" (assignment_expression "pbVar15 = local_b0" identifier = identifier) ;) (do_statement "do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);" do (compound_statement "{\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      }" { (expression_statement "pbVar12 = pbVar14 + 8;" (assignment_expression "pbVar12 = pbVar14 + 8" identifier = (binary_expression "pbVar14 + 8" identifier + number_literal)) ;) (if_statement "if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }" if (parenthesized_expression "(pbVar1 < pbVar12)" ( (binary_expression "pbVar1 < pbVar12" identifier < identifier) )) (compound_statement "{\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }" { (expression_statement "local_6c = 0;" (assignment_expression "local_6c = 0" identifier = number_literal) ;) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" identifier = number_literal) ;) (expression_statement "local_64 = 0;" (assignment_expression "local_64 = 0" identifier = number_literal) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) }) (else_clause "else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }" else (compound_statement "{\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }" { (expression_statement "FUN_000490b0(pbVar14,&local_6c,&local_64);" (call_expression "FUN_000490b0(pbVar14,&local_6c,&local_64)" identifier (argument_list "(pbVar14,&local_6c,&local_64)" ( identifier , (pointer_expression "&local_6c" & identifier) , (pointer_expression "&local_64" & identifier) ))) ;) }))) (if_statement "if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;" if (parenthesized_expression "(pbVar15 + 4 < pbVar1)" ( (binary_expression "pbVar15 + 4 < pbVar1" (binary_expression "pbVar15 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);" statement_identifier : (expression_statement "uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);" (assignment_expression "uVar6 = (*DAT_00076b4c)(pbVar15,iVar8)" identifier = (call_expression "(*DAT_00076b4c)(pbVar15,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar15,iVar8)" ( identifier , identifier )))) ;)) (if_statement "if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }" if (parenthesized_expression "(uVar6 != 0)" ( (binary_expression "uVar6 != 0" identifier != number_literal) )) (compound_statement "{\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }" { (if_statement "if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }" if (parenthesized_expression "(local_98 < uVar6)" ( (binary_expression "local_98 < uVar6" identifier < identifier) )) (compound_statement "{\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }" { (expression_statement "uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5)" identifier = (call_expression "dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5)" identifier (argument_list "(0,"Row index (%u) is larger than number of used entries (%u)\n",5)" ( number_literal , (string_literal ""Row index (%u) is larger than number of used entries (%u)\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "local_b8 = (undefined4 *)local_98;" (assignment_expression "local_b8 = (undefined4 *)local_98" identifier = (cast_expression "(undefined4 *)local_98" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (goto_statement "goto LAB_00031dd2;" goto statement_identifier ;) })) (if_statement "if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }" { (if_statement "if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }" if (parenthesized_expression "(pbVar1 <= pbVar12)" ( (binary_expression "pbVar1 <= pbVar12" identifier <= identifier) )) (compound_statement "{\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }" { (expression_statement "pcVar7 = "Signature (%p) extends beyond end of space in section\n";" (assignment_expression "pcVar7 = "Signature (%p) extends beyond end of space in section\n"" identifier = (string_literal ""Signature (%p) extends beyond end of space in section\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0003156a;" goto statement_identifier ;) })) (expression_statement "uVar9 = *(undefined4 *)(pbVar14 + 4);" (assignment_expression "uVar9 = *(undefined4 *)(pbVar14 + 4)" identifier = (pointer_expression "*(undefined4 *)(pbVar14 + 4)" * (cast_expression "(undefined4 *)(pbVar14 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar14 + 4)" ( (binary_expression "pbVar14 + 4" identifier + number_literal) ))))) ;) (expression_statement "local_8c = local_78 + uVar6 * 0x1a + -0x1a;" (assignment_expression "local_8c = local_78 + uVar6 * 0x1a + -0x1a" identifier = (binary_expression "local_78 + uVar6 * 0x1a + -0x1a" (binary_expression "local_78 + uVar6 * 0x1a" identifier + (binary_expression "uVar6 * 0x1a" identifier * number_literal)) + number_literal)) ;) (expression_statement "*local_8c = *(undefined4 *)pbVar14;" (assignment_expression "*local_8c = *(undefined4 *)pbVar14" (pointer_expression "*local_8c" * identifier) = (pointer_expression "*(undefined4 *)pbVar14" * (cast_expression "(undefined4 *)pbVar14" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "local_8c[1] = uVar9;" (assignment_expression "local_8c[1] = uVar9" (subscript_expression "local_8c[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar13 = (uVar6 + 0x3fffffff) * uVar2;" (assignment_expression "uVar13 = (uVar6 + 0x3fffffff) * uVar2" identifier = (binary_expression "(uVar6 + 0x3fffffff) * uVar2" (parenthesized_expression "(uVar6 + 0x3fffffff)" ( (binary_expression "uVar6 + 0x3fffffff" identifier + number_literal) )) * identifier)) ;) (expression_statement "pbVar14 = pbVar5 + uVar13;" (assignment_expression "pbVar14 = pbVar5 + uVar13" identifier = (binary_expression "pbVar5 + uVar13" identifier + identifier)) ;) (if_statement "if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;" if (parenthesized_expression "((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14))" ( (binary_expression "(CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)" (parenthesized_expression "(CARRY4(uVar13,(uint)pbVar5))" ( (call_expression "CARRY4(uVar13,(uint)pbVar5)" identifier (argument_list "(uVar13,(uint)pbVar5)" ( identifier , (cast_expression "(uint)pbVar5" ( (type_descriptor "uint" type_identifier) ) identifier) ))) )) || (parenthesized_expression "(pbVar1 < pbVar14)" ( (binary_expression "pbVar1 < pbVar14" identifier < identifier) ))) )) (goto_statement "goto LAB_00031db8;" goto statement_identifier ;)) (if_statement "if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;" if (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" ( (binary_expression "local_b8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00031af3;" goto statement_identifier ;)) }) (else_clause "else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }" else (compound_statement "{\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }" { (expression_statement "uVar13 = (uVar6 + 0x3fffffff) * uVar2;" (assignment_expression "uVar13 = (uVar6 + 0x3fffffff) * uVar2" identifier = (binary_expression "(uVar6 + 0x3fffffff) * uVar2" (parenthesized_expression "(uVar6 + 0x3fffffff)" ( (binary_expression "uVar6 + 0x3fffffff" identifier + number_literal) )) * identifier)) ;) (expression_statement "pbVar14 = pbVar5 + uVar13;" (assignment_expression "pbVar14 = pbVar5 + uVar13" identifier = (binary_expression "pbVar5 + uVar13" identifier + identifier)) ;) (if_statement "if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }" if (parenthesized_expression "((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14))" ( (binary_expression "(CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)" (parenthesized_expression "(CARRY4(uVar13,(uint)pbVar5))" ( (call_expression "CARRY4(uVar13,(uint)pbVar5)" identifier (argument_list "(uVar13,(uint)pbVar5)" ( identifier , (cast_expression "(uint)pbVar5" ( (type_descriptor "uint" type_identifier) ) identifier) ))) )) || (parenthesized_expression "(pbVar1 < pbVar14)" ( (binary_expression "pbVar1 < pbVar14" identifier < identifier) ))) )) (compound_statement "{\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }" { (labeled_statement "LAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);" statement_identifier : (expression_statement "uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);" (assignment_expression "uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5)" identifier = (call_expression "dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5)" identifier (argument_list "(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5)" ( number_literal , (string_literal ""Row index (%u) * num columns (%u) > space remaining in section\n"" " string_content escape_sequence ") , number_literal )))) ;)) (labeled_statement "LAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);" statement_identifier : (expression_statement "warn(uVar9,uVar6,local_b8);" (call_expression "warn(uVar9,uVar6,local_b8)" identifier (argument_list "(uVar9,uVar6,local_b8)" ( identifier , identifier , identifier ))) ;)) (return_statement "return 0;" return number_literal ;) })) (expression_statement "uVar9 = FUN_0001eb80(local_64,local_60,local_5c);" (assignment_expression "uVar9 = FUN_0001eb80(local_64,local_60,local_5c)" identifier = (call_expression "FUN_0001eb80(local_64,local_60,local_5c)" identifier (argument_list "(local_64,local_60,local_5c)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [%3d] 0x%s",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [%3d] 0x%s",5)" identifier (argument_list "(0,"  [%3d] 0x%s",5)" ( number_literal , (string_literal ""  [%3d] 0x%s"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_a4,uVar9);" (call_expression "printf(pcVar7,local_a4,uVar9)" identifier (argument_list "(pcVar7,local_a4,uVar9)" ( identifier , identifier , identifier ))) ;) (if_statement "if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }" if (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" ( (binary_expression "local_b8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }" { (expression_statement "local_8c = local_78 + uVar6 * 0x1a + -0x1a;" (assignment_expression "local_8c = local_78 + uVar6 * 0x1a + -0x1a" identifier = (binary_expression "local_78 + uVar6 * 0x1a + -0x1a" (binary_expression "local_78 + uVar6 * 0x1a" identifier + (binary_expression "uVar6 * 0x1a" identifier * number_literal)) + number_literal)) ;) (labeled_statement "LAB_00031af3:\n                local_b4 = (undefined4 *)0x0;" statement_identifier : (expression_statement "local_b4 = (undefined4 *)0x0;" (assignment_expression "local_b4 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pbVar11 = local_a8;" (assignment_expression "pbVar11 = local_a8" identifier = identifier) ;) (do_statement "do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);" do (compound_statement "{\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                }" { (expression_statement "local_b4 = (undefined4 *)((int)local_b4 + 1);" (assignment_expression "local_b4 = (undefined4 *)((int)local_b4 + 1)" identifier = (cast_expression "(undefined4 *)((int)local_b4 + 1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b4 + 1)" ( (binary_expression "(int)local_b4 + 1" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (if_statement "if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }" if (parenthesized_expression "(pbVar14 + 4 < pbVar1)" ( (binary_expression "pbVar14 + 4 < pbVar1" (binary_expression "pbVar14 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);" statement_identifier : (expression_statement "uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);" (assignment_expression "uVar9 = (*DAT_00076b4c)(pbVar14,iVar8)" identifier = (call_expression "(*DAT_00076b4c)(pbVar14,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar14,iVar8)" ( identifier , identifier )))) ;)) (if_statement "if (param_2 == 0) goto LAB_00031b3e;" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00031b3e;" goto statement_identifier ;)) (labeled_statement "LAB_00031bf1:\n                    printf(" %8d",uVar9);" statement_identifier : (expression_statement "printf(" %8d",uVar9);" (call_expression "printf(" %8d",uVar9)" identifier (argument_list "(" %8d",uVar9)" ( (string_literal "" %8d"" " string_content ") , identifier ))) ;)) }) (else_clause "else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }" else (compound_statement "{\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }" { (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" identifier = number_literal) ;) (if_statement "if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;" if (parenthesized_expression "((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))" ( (binary_expression "(pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar14 < pbVar1)" ( (binary_expression "pbVar14 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" ( (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar14" identifier = (binary_expression "(int)pbVar1 - (int)pbVar14" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar14" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00031bd5;" goto statement_identifier ;)) (if_statement "if (param_2 != 0) goto LAB_00031bf1;" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00031bf1;" goto statement_identifier ;)) (labeled_statement "LAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }" statement_identifier : (if_statement "if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }" if (parenthesized_expression "(pbVar11 + 4 < pbVar1)" ( (binary_expression "pbVar11 + 4 < pbVar1" (binary_expression "pbVar11 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);" statement_identifier : (expression_statement "uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);" (assignment_expression "uVar6 = (*DAT_00076b4c)(pbVar11,iVar8)" identifier = (call_expression "(*DAT_00076b4c)(pbVar11,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar11,iVar8)" ( identifier , identifier )))) ;)) (if_statement "if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }" if (parenthesized_expression "(7 < uVar6)" ( (binary_expression "7 < uVar6" number_literal < identifier) )) (compound_statement "{\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }" { (expression_statement "uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5)" identifier = (call_expression "dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5)" identifier (argument_list "(0,"Overlarge Dwarf section index detected: %u\n",5)" ( number_literal , (string_literal ""Overlarge Dwarf section index detected: %u\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar9,uVar6);" (call_expression "warn(uVar9,uVar6)" identifier (argument_list "(uVar9,uVar6)" ( identifier , identifier ))) ;) (goto_statement "goto LAB_00031b71;" goto statement_identifier ;) })) }) (else_clause "else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }" else (compound_statement "{\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }" { (if_statement "if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;" if (parenthesized_expression "((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         )" ( (binary_expression "(pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar11 < pbVar1)" ( (binary_expression "pbVar11 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)" ( (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar11" identifier = (binary_expression "(int)pbVar1 - (int)pbVar11" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar11" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00031c15;" goto statement_identifier ;)) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) })))) (expression_statement "local_8c[uVar6 * 2 + 2] = uVar9;" (assignment_expression "local_8c[uVar6 * 2 + 2] = uVar9" (subscript_expression "local_8c[uVar6 * 2 + 2]" identifier [ (binary_expression "uVar6 * 2 + 2" (binary_expression "uVar6 * 2" identifier * number_literal) + number_literal) ]) = identifier) ;) (expression_statement "local_8c[uVar6 * 2 + 3] = 0;" (assignment_expression "local_8c[uVar6 * 2 + 3] = 0" (subscript_expression "local_8c[uVar6 * 2 + 3]" identifier [ (binary_expression "uVar6 * 2 + 3" (binary_expression "uVar6 * 2" identifier * number_literal) + number_literal) ]) = number_literal) ;) }))) (labeled_statement "LAB_00031b71:\n                  pbVar11 = pbVar11 + 4;" statement_identifier : (expression_statement "pbVar11 = pbVar11 + 4;" (assignment_expression "pbVar11 = pbVar11 + 4" identifier = (binary_expression "pbVar11 + 4" identifier + number_literal)) ;)) (expression_statement "pbVar14 = pbVar14 + 4;" (assignment_expression "pbVar14 = pbVar14 + 4" identifier = (binary_expression "pbVar14 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_b4 < local_b8)" ( (binary_expression "local_b4 < local_b8" identifier < identifier) )) ;) (if_statement "if (param_2 == 0) goto LAB_00031a20;" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00031a20;" goto statement_identifier ;)) })) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) }))) })) }) (else_clause "else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;" else (if_statement "if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;" if (parenthesized_expression "((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))" ( (binary_expression "(pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar15 < pbVar1)" ( (binary_expression "pbVar15 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8)" ( (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar15" identifier = (binary_expression "(int)pbVar1 - (int)pbVar15" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar15" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00031a7a;" goto statement_identifier ;)))) (labeled_statement "LAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);" statement_identifier : (expression_statement "local_a4 = (undefined4 *)((int)local_a4 + 1);" (assignment_expression "local_a4 = (undefined4 *)((int)local_a4 + 1)" identifier = (cast_expression "(undefined4 *)((int)local_a4 + 1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_a4 + 1)" ( (binary_expression "(int)local_a4 + 1" (cast_expression "(int)local_a4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;)) (expression_statement "pbVar14 = pbVar12;" (assignment_expression "pbVar14 = pbVar12" identifier = identifier) ;) (expression_statement "pbVar15 = pbVar15 + 4;" (assignment_expression "pbVar15 = pbVar15 + 4" identifier = (binary_expression "pbVar15 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_a4 < local_bc)" ( (binary_expression "local_a4 < local_bc" identifier < identifier) )) ;) (if_statement "if (param_2 != 0) goto LAB_00032214;" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00032214;" goto statement_identifier ;)) })) (if_statement "if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }" if (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" ( (binary_expression "local_b8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }" { (labeled_statement "LAB_00031e1e:\n      uVar6 = 0;" statement_identifier : (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;)) (expression_statement "pbVar14 = local_a8;" (assignment_expression "pbVar14 = local_a8" identifier = identifier) ;) (do_statement "do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);" do (compound_statement "{\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      }" { (expression_statement "uVar6 = uVar6 + 1;" (assignment_expression "uVar6 = uVar6 + 1" identifier = (binary_expression "uVar6 + 1" identifier + number_literal)) ;) (if_statement "if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;" if (parenthesized_expression "(pbVar14 + 4 < pbVar1)" ( (binary_expression "pbVar14 + 4 < pbVar1" (binary_expression "pbVar14 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);" statement_identifier : (expression_statement "(*DAT_00076b4c)(pbVar14,iVar8);" (call_expression "(*DAT_00076b4c)(pbVar14,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar14,iVar8)" ( identifier , identifier ))) ;)) }) (else_clause "else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;" else (if_statement "if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;" if (parenthesized_expression "((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))" ( (binary_expression "(pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar14 < pbVar1)" ( (binary_expression "pbVar14 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" ( (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar14" identifier = (binary_expression "(int)pbVar1 - (int)pbVar14" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar14" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00031e67;" goto statement_identifier ;)))) (if_statement "if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }" { (expression_statement "uVar9 = FUN_0001e440();" (assignment_expression "uVar9 = FUN_0001e440()" identifier = (call_expression "FUN_0001e440()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf(" %8s",uVar9);" (call_expression "printf(" %8s",uVar9)" identifier (argument_list "(" %8s",uVar9)" ( (string_literal "" %8s"" " string_content ") , identifier ))) ;) })) (expression_statement "pbVar14 = pbVar14 + 4;" (assignment_expression "pbVar14 = pbVar14 + 4" identifier = (binary_expression "pbVar14 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar6 < local_b8)" ( (binary_expression "uVar6 < local_b8" identifier < identifier) )) ;) (if_statement "if (param_2 != 0) goto LAB_0003227a;" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0003227a;" goto statement_identifier ;)) })) (if_statement "if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }" if (parenthesized_expression "(local_bc == (undefined4 *)0x0)" ( (binary_expression "local_bc == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) }) (else_clause "else {\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }" else (compound_statement "{\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }" { (expression_statement "pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Offset table\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Offset table\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Offset table\n",5)" identifier (argument_list "(0,"  Offset table\n",5)" ( number_literal , (string_literal ""  Offset table\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7);" (call_expression "printf(pcVar7)" identifier (argument_list "(pcVar7)" ( identifier ))) ;) (if_statement "if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" if (parenthesized_expression "(bVar17 == bVar16)" ( (binary_expression "bVar17 == bVar16" identifier == identifier) )) (compound_statement "{\n      uVar9 = dcgettext(0,"signature",5);\n    }" { (expression_statement "uVar9 = dcgettext(0,"signature",5);" (assignment_expression "uVar9 = dcgettext(0,"signature",5)" identifier = (call_expression "dcgettext(0,"signature",5)" identifier (argument_list "(0,"signature",5)" ( number_literal , (string_literal ""signature"" " string_content ") , number_literal )))) ;) }) (else_clause "else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" else (compound_statement "{\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" { (expression_statement "uVar9 = dcgettext(0,"dwo_id",5);" (assignment_expression "uVar9 = dcgettext(0,"dwo_id",5)" identifier = (call_expression "dcgettext(0,"dwo_id",5)" identifier (argument_list "(0,"dwo_id",5)" ( number_literal , (string_literal ""dwo_id"" " string_content ") , number_literal )))) ;) }))) (expression_statement "printf("  slot  %-16s  ",uVar9);" (call_expression "printf("  slot  %-16s  ",uVar9)" identifier (argument_list "("  slot  %-16s  ",uVar9)" ( (string_literal ""  slot  %-16s  "" " string_content ") , identifier ))) ;) (expression_statement "pbVar14 = local_a8;" (assignment_expression "pbVar14 = local_a8" identifier = identifier) ;) (if_statement "if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }" if (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" ( (binary_expression "local_b8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }" { (do_statement "do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);" do (compound_statement "{\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      }" { (expression_statement "pbVar15 = pbVar14 + 4;" (assignment_expression "pbVar15 = pbVar14 + 4" identifier = (binary_expression "pbVar14 + 4" identifier + number_literal)) ;) (if_statement "if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;" if (parenthesized_expression "(pbVar15 < pbVar1)" ( (binary_expression "pbVar15 < pbVar1" identifier < identifier) )) (compound_statement "{\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (labeled_statement "LAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);" statement_identifier : (expression_statement "(*DAT_00076b4c)(pbVar14,iVar8);" (call_expression "(*DAT_00076b4c)(pbVar14,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar14,iVar8)" ( identifier , identifier ))) ;)) }) (else_clause "else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;" else (if_statement "if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;" if (parenthesized_expression "((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))" ( (binary_expression "(pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar14 < pbVar1)" ( (binary_expression "pbVar14 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" ( (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar14" identifier = (binary_expression "(int)pbVar1 - (int)pbVar14" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar14" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_000321db;" goto statement_identifier ;)))) (expression_statement "uVar9 = FUN_0001e440();" (assignment_expression "uVar9 = FUN_0001e440()" identifier = (call_expression "FUN_0001e440()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf(" %8s",uVar9);" (call_expression "printf(" %8s",uVar9)" identifier (argument_list "(" %8s",uVar9)" ( (string_literal "" %8s"" " string_content ") , identifier ))) ;) (expression_statement "pbVar14 = pbVar15;" (assignment_expression "pbVar14 = pbVar15" identifier = identifier) ;) }) while (parenthesized_expression "(pbVar5 != pbVar15)" ( (binary_expression "pbVar5 != pbVar15" identifier != identifier) )) ;) })) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) (expression_statement "local_78 = (undefined4 *)0x0;" (assignment_expression "local_78 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;" if (parenthesized_expression "(local_bc != (undefined4 *)0x0)" ( (binary_expression "local_bc != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000319e5;" goto statement_identifier ;)) (expression_statement "local_78 = local_bc;" (assignment_expression "local_78 = local_bc" identifier = identifier) ;) (labeled_statement "LAB_00032214:\n    putchar(10);" statement_identifier : (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;)) (expression_statement "pcVar7 = (char *)dcgettext(0,"  Size table\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Size table\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Size table\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Size table\n",5)" identifier (argument_list "(0,"  Size table\n",5)" ( number_literal , (string_literal ""  Size table\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7);" (call_expression "printf(pcVar7)" identifier (argument_list "(pcVar7)" ( identifier ))) ;) (if_statement "if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" if (parenthesized_expression "(bVar17 == bVar16)" ( (binary_expression "bVar17 == bVar16" identifier == identifier) )) (compound_statement "{\n      uVar9 = dcgettext(0,"signature",5);\n    }" { (expression_statement "uVar9 = dcgettext(0,"signature",5);" (assignment_expression "uVar9 = dcgettext(0,"signature",5)" identifier = (call_expression "dcgettext(0,"signature",5)" identifier (argument_list "(0,"signature",5)" ( number_literal , (string_literal ""signature"" " string_content ") , number_literal )))) ;) }) (else_clause "else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" else (compound_statement "{\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" { (expression_statement "uVar9 = dcgettext(0,"dwo_id",5);" (assignment_expression "uVar9 = dcgettext(0,"dwo_id",5)" identifier = (call_expression "dcgettext(0,"dwo_id",5)" identifier (argument_list "(0,"dwo_id",5)" ( number_literal , (string_literal ""dwo_id"" " string_content ") , number_literal )))) ;) }))) (expression_statement "printf("  slot  %-16s  ",uVar9);" (call_expression "printf("  slot  %-16s  ",uVar9)" identifier (argument_list "("  slot  %-16s  ",uVar9)" ( (string_literal ""  slot  %-16s  "" " string_content ") , identifier ))) ;) (if_statement "if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;" if (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" ( (binary_expression "local_b8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00031e1e;" goto statement_identifier ;)) (labeled_statement "LAB_0003227a:\n    putchar(10);" statement_identifier : (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;)) (if_statement "if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;" if (parenthesized_expression "(local_bc == (undefined4 *)0x0)" ( (binary_expression "local_bc == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000316b0;" goto statement_identifier ;)) }))) (expression_statement "local_b4 = (undefined4 *)0x0;" (assignment_expression "local_b4 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pbVar14 = local_b0;" (assignment_expression "pbVar14 = local_b0" identifier = identifier) ;) (do_statement "do {\n    if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }\n    if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined4 *)((int)local_b4 + 1);\n    local_88 = local_88 + 8;\n    pbVar14 = pbVar14 + 4;\n  } while (local_b4 < local_bc);" do (compound_statement "{\n    if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }\n    if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined4 *)((int)local_b4 + 1);\n    local_88 = local_88 + 8;\n    pbVar14 = pbVar14 + 4;\n  }" { (if_statement "if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }" if (parenthesized_expression "(pbVar1 < local_88 + 8)" ( (binary_expression "pbVar1 < local_88 + 8" identifier < (binary_expression "local_88 + 8" identifier + number_literal)) )) (compound_statement "{\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }" { (expression_statement "local_6c = 0;" (assignment_expression "local_6c = 0" identifier = number_literal) ;) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" identifier = number_literal) ;) (expression_statement "local_64 = 0;" (assignment_expression "local_64 = 0" identifier = number_literal) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) }) (else_clause "else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }" else (compound_statement "{\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }" { (expression_statement "FUN_000490b0(local_88,&local_6c,&local_64);" (call_expression "FUN_000490b0(local_88,&local_6c,&local_64)" identifier (argument_list "(local_88,&local_6c,&local_64)" ( identifier , (pointer_expression "&local_6c" & identifier) , (pointer_expression "&local_64" & identifier) ))) ;) }))) (if_statement "if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;" if (parenthesized_expression "(pbVar14 + 4 < pbVar1)" ( (binary_expression "pbVar14 + 4 < pbVar1" (binary_expression "pbVar14 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);" statement_identifier : (expression_statement "iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);" (assignment_expression "iVar8 = (*DAT_00076b4c)(pbVar14,iVar8)" identifier = (call_expression "(*DAT_00076b4c)(pbVar14,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar14,iVar8)" ( identifier , identifier )))) ;)) (if_statement "if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }" { (if_statement "if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }" { (if_statement "if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }" if (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" ( (binary_expression "local_b8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }" { (labeled_statement "LAB_00031f85:\n            local_b0 = (byte *)0x0;" statement_identifier : (expression_statement "local_b0 = (byte *)0x0;" (assignment_expression "local_b0 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;" (assignment_expression "pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98" identifier = (binary_expression "pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98" (binary_expression "pbVar5 + (iVar8 + 0x3fffffff) * uVar2" identifier + (binary_expression "(iVar8 + 0x3fffffff) * uVar2" (parenthesized_expression "(iVar8 + 0x3fffffff)" ( (binary_expression "iVar8 + 0x3fffffff" identifier + number_literal) )) * identifier)) + (binary_expression "uVar2 * local_98" identifier * identifier))) ;) (expression_statement "pbVar12 = local_a8;" (assignment_expression "pbVar12 = local_a8" identifier = identifier) ;) (do_statement "do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);" do (compound_statement "{\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            }" { (expression_statement "local_b0 = (byte *)((int)local_b0 + 1);" (assignment_expression "local_b0 = (byte *)((int)local_b0 + 1)" identifier = (cast_expression "(byte *)((int)local_b0 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + 1)" ( (binary_expression "(int)local_b0 + 1" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (if_statement "if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }" if (parenthesized_expression "(pbVar15 + 4 < pbVar1)" ( (binary_expression "pbVar15 + 4 < pbVar1" (binary_expression "pbVar15 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }" { (expression_statement "iVar10 = 4;" (assignment_expression "iVar10 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);" statement_identifier : (expression_statement "uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);" (assignment_expression "uVar9 = (*DAT_00076b4c)(pbVar15,iVar10)" identifier = (call_expression "(*DAT_00076b4c)(pbVar15,iVar10)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar15,iVar10)" ( identifier , identifier )))) ;)) }) (else_clause "else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }" else (compound_statement "{\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }" { (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" identifier = number_literal) ;) (if_statement "if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;" if (parenthesized_expression "((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))" ( (binary_expression "(pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8)" (parenthesized_expression "(pbVar15 < pbVar1)" ( (binary_expression "pbVar15 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8)" ( (comma_expression "iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8" (assignment_expression "iVar10 = (int)pbVar1 - (int)pbVar15" identifier = (binary_expression "(int)pbVar1 - (int)pbVar15" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar15" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar10 - 1U < 8" (binary_expression "iVar10 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00032035;" goto statement_identifier ;)) }))) (if_statement "if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }" { (if_statement "if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }" if (parenthesized_expression "(pbVar12 + 4 < pbVar1)" ( (binary_expression "pbVar12 + 4 < pbVar1" (binary_expression "pbVar12 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }" { (expression_statement "iVar10 = 4;" (assignment_expression "iVar10 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);" statement_identifier : (expression_statement "uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);" (assignment_expression "uVar6 = (*DAT_00076b4c)(pbVar12,iVar10)" identifier = (call_expression "(*DAT_00076b4c)(pbVar12,iVar10)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar12,iVar10)" ( identifier , identifier )))) ;)) (if_statement "if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }" if (parenthesized_expression "(7 < uVar6)" ( (binary_expression "7 < uVar6" number_literal < identifier) )) (compound_statement "{\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }" { (expression_statement "uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5)" identifier = (call_expression "dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5)" identifier (argument_list "(0,"Overlarge Dwarf section index detected: %u\n",5)" ( number_literal , (string_literal ""Overlarge Dwarf section index detected: %u\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar9,uVar6);" (call_expression "warn(uVar9,uVar6)" identifier (argument_list "(uVar9,uVar6)" ( identifier , identifier ))) ;) (goto_statement "goto LAB_00032001;" goto statement_identifier ;) })) }) (else_clause "else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }" else (compound_statement "{\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }" { (if_statement "if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;" if (parenthesized_expression "((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))" ( (binary_expression "(pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8)" (parenthesized_expression "(pbVar12 < pbVar1)" ( (binary_expression "pbVar12 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8)" ( (comma_expression "iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8" (assignment_expression "iVar10 = (int)pbVar1 - (int)pbVar12" identifier = (binary_expression "(int)pbVar1 - (int)pbVar12" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar12" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar10 - 1U < 8" (binary_expression "iVar10 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00032055;" goto statement_identifier ;)) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) }))) (expression_statement "local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;" (assignment_expression "local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9" (subscript_expression "local_78[iVar8 * 0x1a + (uVar6 - 8)]" identifier [ (binary_expression "iVar8 * 0x1a + (uVar6 - 8)" (binary_expression "iVar8 * 0x1a" identifier * number_literal) + (parenthesized_expression "(uVar6 - 8)" ( (binary_expression "uVar6 - 8" identifier - number_literal) ))) ]) = identifier) ;) }) (else_clause "else {\n                printf(" %8d",uVar9);\n              }" else (compound_statement "{\n                printf(" %8d",uVar9);\n              }" { (expression_statement "printf(" %8d",uVar9);" (call_expression "printf(" %8d",uVar9)" identifier (argument_list "(" %8d",uVar9)" ( (string_literal "" %8d"" " string_content ") , identifier ))) ;) }))) (labeled_statement "LAB_00032001:\n              pbVar12 = pbVar12 + 4;" statement_identifier : (expression_statement "pbVar12 = pbVar12 + 4;" (assignment_expression "pbVar12 = pbVar12 + 4" identifier = (binary_expression "pbVar12 + 4" identifier + number_literal)) ;)) (expression_statement "pbVar15 = pbVar15 + 4;" (assignment_expression "pbVar15 = pbVar15 + 4" identifier = (binary_expression "pbVar15 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_b0 < local_b8)" ( (binary_expression "local_b0 < local_b8" identifier < identifier) )) ;) (if_statement "if (param_2 != 0) goto LAB_0003201d;" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0003201d;" goto statement_identifier ;)) })) }) (else_clause "else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }" else (compound_statement "{\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }" { (expression_statement "uVar9 = FUN_0001eb80(local_64,local_60,local_5c);" (assignment_expression "uVar9 = FUN_0001eb80(local_64,local_60,local_5c)" identifier = (call_expression "FUN_0001eb80(local_64,local_60,local_5c)" identifier (argument_list "(local_64,local_60,local_5c)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [%3d] 0x%s",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [%3d] 0x%s",5)" identifier (argument_list "(0,"  [%3d] 0x%s",5)" ( number_literal , (string_literal ""  [%3d] 0x%s"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_b4,uVar9);" (call_expression "printf(pcVar7,local_b4,uVar9)" identifier (argument_list "(pcVar7,local_b4,uVar9)" ( identifier , identifier , identifier ))) ;) (if_statement "if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;" if (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" ( (binary_expression "local_b8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00031f85;" goto statement_identifier ;)) (labeled_statement "LAB_0003201d:\n          putchar(10);" statement_identifier : (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;)) }))) })) }) (else_clause "else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;" else (if_statement "if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;" if (parenthesized_expression "((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))" ( (binary_expression "(pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar14 < pbVar1)" ( (binary_expression "pbVar14 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" ( (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar14" identifier = (binary_expression "(int)pbVar1 - (int)pbVar14" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar14" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00031f4a;" goto statement_identifier ;)))) (expression_statement "local_b4 = (undefined4 *)((int)local_b4 + 1);" (assignment_expression "local_b4 = (undefined4 *)((int)local_b4 + 1)" identifier = (cast_expression "(undefined4 *)((int)local_b4 + 1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b4 + 1)" ( (binary_expression "(int)local_b4 + 1" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "local_88 = local_88 + 8;" (assignment_expression "local_88 = local_88 + 8" identifier = (binary_expression "local_88 + 8" identifier + number_literal)) ;) (expression_statement "pbVar14 = pbVar14 + 4;" (assignment_expression "pbVar14 = pbVar14 + 4" identifier = (binary_expression "pbVar14 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_b4 < local_bc)" ( (binary_expression "local_b4 < local_bc" identifier < identifier) )) ;) (labeled_statement "LAB_000316a3:\n  if (param_2 == 0) {\n    return 1;\n  }" statement_identifier : (if_statement "if (param_2 == 0) {\n    return 1;\n  }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n    return 1;\n  }" { (return_statement "return 1;" return number_literal ;) }))) (labeled_statement "LAB_000316b0:\n  putchar(10);" statement_identifier : (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;)) (return_statement "return 1;" return number_literal ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nint __regparm3 process_cu_tu_index(dwarf_section *section,int do_display)\n\n{\n  dwarf_section *pdVar1;\n  elf_vma *peVar2;\n  uint *puVar3;\n  uint uVar4;\n  _func_elf_vma_uchar_ptr_int *p_Var5;\n  cu_tu_set *pcVar6;\n  cu_tu_set *pcVar7;\n  char *pcVar8;\n  undefined4 uVar9;\n  char *pcVar10;\n  dwarf_section *section_1;\n  dwarf_section *extraout_ECX;\n  dwarf_section *pdVar11;\n  dwarf_section *extraout_ECX_00;\n  dwarf_section *pdVar12;\n  int iVar13;\n  elf_vma eVar25;\n  elf_vma eVar26;\n  elf_vma eVar27;\n  char **extraout_ECX_01;\n  char **ppcVar14;\n  int iVar15;\n  size_t *psVar16;\n  uint uVar17;\n  undefined1 auVar18 [4];\n  char **ppcVar19;\n  byte *pbVar20;\n  bool bVar21;\n  bool bVar22;\n  byte bVar23;\n  elf_vma *low;\n  undefined1 *in_stack_ffffff30;\n  undefined1 *puVar24;\n  cu_tu_set *local_bc;\n  undefined1 local_b8 [4];\n  undefined1 local_b4 [4];\n  undefined1 local_b0 [4];\n  undefined8 local_ac;\n  cu_tu_set *local_a4;\n  elf_vma local_98;\n  cu_tu_set *local_8c;\n  dwarf_section *local_88;\n  cu_tu_set *local_78;\n  dwarf_vma signature_high;\n  dwarf_vma signature_low;\n  char buf [64];\n  \n  bVar23 = 0;\n  pdVar12 = (dwarf_section *)section->start;\n  pcVar7 = *(cu_tu_set **)&section->size;\n  iVar13 = *(int *)((int)&section->size + 4);\n  if (pdVar12 == (dwarf_section *)0x0) {\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s is empty\n";\n  }\n  else {\n    if (iVar13 != 0 || (uint)-iVar13 < (uint)((cu_tu_set *)0x17 < pcVar7)) {\n      local_b0 = (undefined1  [4])&pdVar12->name;\n      pdVar1 = (dwarf_section *)((int)pcVar7->section_offsets + (int)&pdVar12[-1].num_relocs);\n      ppcVar14 = &pdVar12->compressed_name;\n      if (ppcVar14 < pdVar1) {\n        pcVar6 = (cu_tu_set *)0x4;\n      }\n      else if ((pdVar1 <= pdVar12) ||\n              (pcVar6 = pcVar7,\n              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU))) {\n        local_ac._0_4_ = 0;\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = (cu_tu_set *)&byte_get;\n      local_ac._0_4_ = (*byte_get)((uchar *)pdVar12,(int)pcVar6);\n      if ((uint)(elf_vma)local_ac < 2) {\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      if ((uint)local_b0 < pdVar1) {\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((ppcVar14 < pdVar1) &&\n         ((undefined1 *)((int)pcVar7[-1].section_sizes + 0x1bU) < (undefined1 *)0x8))\n      goto LAB_000323ac;\n      pdVar11 = (dwarf_section *)&pdVar12->filename;\n      local_b8 = (undefined1  [4])0x0;\n      puVar24 = in_stack_ffffff30;\n      if (pdVar11 < pdVar1) goto LAB_000313e1;\nLAB_00031338:\n      puVar24 = in_stack_ffffff30;\n      local_b0 = (undefined1  [4])&pdVar12->start;\n      if ((uint)local_b0 < pdVar1) {\n        local_98._0_4_ = 0;\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98._0_4_ = 0;\n      section_1 = pdVar11;\nLAB_0003134f:\n      if (pdVar12 <= (uint)local_b0) {\n        local_88 = (dwarf_section *)local_b0;\n        local_ac._4_4_ = (dwarf_section *)local_b0;\n        local_bc = (cu_tu_set *)0x0;\n        do {\n          if (do_display != 0) {\n            puVar24 = (undefined1 *)0x3159f;\n            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);\n            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_ac);\n            if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }\n            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_98);\n            pcVar7 = (cu_tu_set *)0x0;\n            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar8,local_bc);\n            section_1 = extraout_ECX_00;\n          }\n          if (pdVar1 < local_ac._4_4_) {\n            pdVar12 = (dwarf_section *)section->name;\n            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if ((elf_vma)local_ac != 1) {\n            if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }\n            uVar4 = (int)local_b8 * 4;\n            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;\n            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(pcVar8,local_b8);\n            return 0;\n          }\n          if (do_display != 0) {\n            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined1  [4])0x0;\n            goto LAB_0003165a;\n          }\n          iVar15 = (int)pdVar1 - (int)local_ac._4_4_;\n          iVar13 = iVar15 + 3;\n          if (-1 < iVar15) {\n            iVar13 = iVar15;\n          }\n          shndx_pool_size = iVar13 >> 2;\n          if (shndx_pool == (uint *)0x0) {\n            shndx_pool_used = 0;\n            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);\nLAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          shndx_pool_size = shndx_pool_size + shndx_pool_used;\n          if (shndx_pool_size < (void *)0x3fffffff) {\n            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);\n            goto LAB_00031d8a;\n          }\n          in_stack_ffffff30 = (undefined1 *)0x323ac;\n          xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1);\n          pdVar12 = (dwarf_section *)0x0;\n          ppcVar14 = extraout_ECX_01;\nLAB_000323ac:\n          psVar16 = pcVar7[-1].section_sizes + 7;\nLAB_0003153d:\n          local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16);\nLAB_000313d0:\n          pdVar11 = (dwarf_section *)&pdVar12->filename;\n          puVar24 = in_stack_ffffff30;\n          if (pdVar11 < pdVar1) {\nLAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }\n          }\n          else {\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }\nLAB_0003148f:\n          pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);\n          pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2);\n          section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7);\n          local_bc = pcVar7;\n          if (((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))\n          goto LAB_000314c9;\n          local_88 = (dwarf_section *)local_b0;\n          local_b0 = (undefined1  [4])pdVar11;\n          local_ac._4_4_ = section_1;\n        } while( true );\n      }\n      local_bc = (cu_tu_set *)0x0;\nLAB_000314c9:\n      pdVar12 = (dwarf_section *)section->name;\n      pcVar8 = (char *)dcngettext(0,"Section %s is too small for %d slot\n",\n                                  "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s is too small to contain a CU/TU header\n";\n  }\nLAB_0003156a:\n  local_bc = (cu_tu_set *)0x5;\n  pcVar8 = (char *)dcgettext(0,pcVar8,5);\nLAB_000314f3:\n  warn(pcVar8,pdVar12,local_bc);\n  return 0;\nLAB_0003165a:\n  if (pdVar1 < &local_88->name) {\n    signature_high._0_4_ = (char *)0x0;\n    signature_high._4_4_ = 0;\n    signature_low._0_4_ = 0;\n    signature_low._4_4_ = 0;\n    goto LAB_0003168c;\n  }\n  low = &signature_low;\n  byte_get_64((uchar *)local_88,&signature_high,low);\n  if ((signature_high._4_4_ != 0 || (char *)signature_high != (char *)0x0) ||\n     (signature_low._4_4_ != 0 || (int)signature_low != 0)) {\n    iVar13 = 4;\n    if ((&((dwarf_section *)local_b0)->compressed_name < pdVar1) ||\n       ((pdVar12 = local_ac._4_4_, (uint)local_b0 < pdVar1 &&\n        (iVar13 = (int)pdVar1 - (int)local_b0, iVar13 - 1U < 8)))) {\n      eVar25._0_4_ = (*byte_get)((uchar *)local_b0,iVar13);\n      pdVar12 = (dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25);\n      if ((dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25) <\n          local_ac._4_4_) {\n        pcVar8 = (char *)dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(pcVar8);\n        return 0;\n      }\n    }\n    if (do_display != 0) {\n      low = (elf_vma *)\n            dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),CONCAT44(puVar24,buf),\n                           (char *)signature_high,signature_high._4_4_);\n      pcVar8 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar8,local_b8,low);\n    }\n    if (pdVar12 < pdVar1) {\n      do {\n        ppcVar14 = &pdVar12->compressed_name;\n        if (ppcVar14 < pdVar1) {\n          iVar13 = 4;\n        }\n        else {\n          iVar13 = (int)pdVar1 - (int)pdVar12;\n          if (7 < iVar13 - 1U) goto LAB_000317d8;\n        }\n        eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        if ((elf_vma)eVar25 == 0) goto LAB_000317d8;\n        if (do_display == 0) {\n          if (shndx_pool_used < shndx_pool_size) {\n            peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used);\n            shndx_pool_used = shndx_pool_used + 1;\n                    /* WARNING: Store size is inaccurate */\n            *peVar2 = (elf_vma)eVar25;\n          }\n          else {\n            low = (elf_vma *)0x5;\n            pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(pcVar8);\n          }\n        }\n        else {\n          printf(" %d",(undefined4)(elf_vma)eVar25,low);\n        }\n        pdVar12 = (dwarf_section *)ppcVar14;\n        if (pdVar1 <= ppcVar14) break;\n      } while( true );\n    }\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }\nLAB_0003168c:\n  local_b8 = (undefined1  [4])((int)(uint64_t *)local_b8 + 1);\n  local_88 = (dwarf_section *)&local_88->name;\n  local_b0 = (undefined1  [4])&((dwarf_section *)local_b0)->compressed_name;\n  if (local_bc <= (uint)local_b8) goto LAB_000316a3;\n  goto LAB_0003165a;\nLAB_000317d8:\n  if (do_display == 0) {\n    if (shndx_pool_used < shndx_pool_size) {\n      puVar3 = shndx_pool + shndx_pool_used;\n      shndx_pool_used = shndx_pool_used + 1;\n      *puVar3 = 0;\n    }\n    else {\n      pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(pcVar8);\n    }\n  }\n  else {\n    putchar(10);\n  }\n  goto LAB_0003168c;\n  while( true ) {\n    iVar13 = iVar13 + -1;\n    bVar21 = *(byte *)&pdVar12->uncompressed_name < *pbVar20;\n    bVar22 = *(byte *)&pdVar12->uncompressed_name == *pbVar20;\n    pdVar12 = (dwarf_section *)((int)pdVar12 + (uint)bVar23 * -2 + 1);\n    pbVar20 = pbVar20 + (uint)bVar23 * -2 + 1;\n    if (!bVar22) break;\ncode_r0x00031991:\n    if (iVar13 == 0) break;\n  }\n  bVar22 = !bVar21 && !bVar22;\n  if (do_display == 0) {\n    if (bVar22 == bVar21) {\n      tu_count = (int)(elf_vma)local_98;\n      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);\n      tu_sets = local_78;\n    }\n    else {\n      cu_count = (int)(elf_vma)local_98;\n      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);\n      cu_sets = local_78;\n    }\n    if (local_bc != (cu_tu_set *)0x0) {\nLAB_000319e5:\n      local_a4 = (cu_tu_set *)0x0;\n      pdVar12 = local_88;\n      auVar18 = local_b0;\n      do {\n        ppcVar19 = &pdVar12->name;\n        if (pdVar1 < ppcVar19) {\n          signature_high._0_4_ = (char *)0x0;\n          signature_high._4_4_ = 0;\n          signature_low._0_4_ = 0;\n          signature_low._4_4_ = 0;\n        }\n        else {\n          byte_get_64((uchar *)pdVar12,&signature_high,&signature_low);\n        }\n        if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031a7a:\n          eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n          if ((elf_vma)eVar25 != 0) {\n            if ((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25) {\n              pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);\n              local_b8 = (undefined1  [4])(elf_vma)local_98;\n              goto LAB_00031dd2;\n            }\n            if (do_display == 0) {\n              if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;\n              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\n              *(char **)&local_8c->signature = pdVar12->uncompressed_name;\n              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;\n              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (cu_tu_set *)((int)&local_a4->signature + 1);\n        pdVar12 = (dwarf_section *)ppcVar19;\n        auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;\n      } while (local_a4 < local_bc);\n      if (do_display != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031e1e:\n      eVar25._0_4_ = 0;\n      pdVar12 = local_ac._4_4_;\n      do {\n        eVar25._0_4_ = (elf_vma)((int)(elf_vma)eVar25 + 1);\n        if (&pdVar12->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031e67:\n          local_b4 = (undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          local_b4 = (undefined1  [4])0x0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_00031e67;\n        }\n        if (do_display != 0) {\n          puVar24 = (undefined1 *)0x31e89;\n          pcVar8 = get_DW_SECT_short_name((uint)local_b4);\n          printf(" %8s",pcVar8);\n        }\n        pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n      } while ((uint)(elf_vma)eVar25 < (uint)local_b8);\n      if (do_display != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (cu_tu_set *)0x0) {\n      return 1;\n    }\n  }\n  else {\n    pcVar8 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar8);\n    if (bVar22 == bVar21) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pdVar12 = local_ac._4_4_;\n    if (local_b8 != (undefined1  [4])0x0) {\n      do {\n        ppcVar19 = &pdVar12->compressed_name;\n        if (ppcVar19 < pdVar1) {\n          iVar13 = 4;\nLAB_000321db:\n          eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          eVar25._0_4_ = 0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_000321db;\n        }\n        puVar24 = (undefined1 *)0x321b7;\n        pcVar8 = get_DW_SECT_short_name((uint)(elf_vma)eVar25);\n        printf(" %8s",pcVar8);\n        pdVar12 = (dwarf_section *)ppcVar19;\n      } while (ppcVar14 != ppcVar19);\n    }\n    putchar(10);\n    local_78 = (cu_tu_set *)0x0;\n    if (local_bc != (cu_tu_set *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar8 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar8);\n    if (bVar22 == bVar21) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined1  [4])0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\n  }\n  local_b4 = (undefined1  [4])0x0;\n  auVar18 = local_b0;\n  do {\n    if (pdVar1 < &local_88->name) {\n      signature_high._0_4_ = (char *)0x0;\n      signature_high._4_4_ = 0;\n      signature_low._0_4_ = 0;\n      signature_low._4_4_ = 0;\n    }\n    else {\n      byte_get_64((uchar *)local_88,&signature_high,&signature_low);\n    }\n    if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n      iVar13 = 4;\nLAB_00031f4a:\n      eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n      if ((elf_vma)eVar25 != 0) {\n        if (do_display == 0) {\n          if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031f85:\n            local_b0 = (undefined1  [4])0x0;\n            pdVar12 = (dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98);\n            pdVar11 = local_ac._4_4_;\n            do {\n              local_b0 = (undefined1  [4])((int)local_b0 + 1);\n              if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }\nLAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n            } while ((uint)local_b0 < (uint)local_b8);\n            if (do_display != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)\n          ;\n          pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar10,local_b4,pcVar8);\n          if (local_b8 != (undefined1  [4])0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined1  [4])((int)(uint64_t *)local_b4 + 1);\n    local_88 = (dwarf_section *)&local_88->name;\n    auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;\n  } while ((uint)local_b4 < local_bc);\nLAB_000316a3:\n  if (do_display == 0) {\n    return 1;\n  }\nLAB_000316b0:\n  putchar(10);\n  return 1;\n}\n\n" comment (function_definition "int __regparm3 process_cu_tu_index(dwarf_section *section,int do_display)\n\n{\n  dwarf_section *pdVar1;\n  elf_vma *peVar2;\n  uint *puVar3;\n  uint uVar4;\n  _func_elf_vma_uchar_ptr_int *p_Var5;\n  cu_tu_set *pcVar6;\n  cu_tu_set *pcVar7;\n  char *pcVar8;\n  undefined4 uVar9;\n  char *pcVar10;\n  dwarf_section *section_1;\n  dwarf_section *extraout_ECX;\n  dwarf_section *pdVar11;\n  dwarf_section *extraout_ECX_00;\n  dwarf_section *pdVar12;\n  int iVar13;\n  elf_vma eVar25;\n  elf_vma eVar26;\n  elf_vma eVar27;\n  char **extraout_ECX_01;\n  char **ppcVar14;\n  int iVar15;\n  size_t *psVar16;\n  uint uVar17;\n  undefined1 auVar18 [4];\n  char **ppcVar19;\n  byte *pbVar20;\n  bool bVar21;\n  bool bVar22;\n  byte bVar23;\n  elf_vma *low;\n  undefined1 *in_stack_ffffff30;\n  undefined1 *puVar24;\n  cu_tu_set *local_bc;\n  undefined1 local_b8 [4];\n  undefined1 local_b4 [4];\n  undefined1 local_b0 [4];\n  undefined8 local_ac;\n  cu_tu_set *local_a4;\n  elf_vma local_98;\n  cu_tu_set *local_8c;\n  dwarf_section *local_88;\n  cu_tu_set *local_78;\n  dwarf_vma signature_high;\n  dwarf_vma signature_low;\n  char buf [64];\n  \n  bVar23 = 0;\n  pdVar12 = (dwarf_section *)section->start;\n  pcVar7 = *(cu_tu_set **)&section->size;\n  iVar13 = *(int *)((int)&section->size + 4);\n  if (pdVar12 == (dwarf_section *)0x0) {\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s is empty\n";\n  }\n  else {\n    if (iVar13 != 0 || (uint)-iVar13 < (uint)((cu_tu_set *)0x17 < pcVar7)) {\n      local_b0 = (undefined1  [4])&pdVar12->name;\n      pdVar1 = (dwarf_section *)((int)pcVar7->section_offsets + (int)&pdVar12[-1].num_relocs);\n      ppcVar14 = &pdVar12->compressed_name;\n      if (ppcVar14 < pdVar1) {\n        pcVar6 = (cu_tu_set *)0x4;\n      }\n      else if ((pdVar1 <= pdVar12) ||\n              (pcVar6 = pcVar7,\n              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU))) {\n        local_ac._0_4_ = 0;\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = (cu_tu_set *)&byte_get;\n      local_ac._0_4_ = (*byte_get)((uchar *)pdVar12,(int)pcVar6);\n      if ((uint)(elf_vma)local_ac < 2) {\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      if ((uint)local_b0 < pdVar1) {\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((ppcVar14 < pdVar1) &&\n         ((undefined1 *)((int)pcVar7[-1].section_sizes + 0x1bU) < (undefined1 *)0x8))\n      goto LAB_000323ac;\n      pdVar11 = (dwarf_section *)&pdVar12->filename;\n      local_b8 = (undefined1  [4])0x0;\n      puVar24 = in_stack_ffffff30;\n      if (pdVar11 < pdVar1) goto LAB_000313e1;\nLAB_00031338:\n      puVar24 = in_stack_ffffff30;\n      local_b0 = (undefined1  [4])&pdVar12->start;\n      if ((uint)local_b0 < pdVar1) {\n        local_98._0_4_ = 0;\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98._0_4_ = 0;\n      section_1 = pdVar11;\nLAB_0003134f:\n      if (pdVar12 <= (uint)local_b0) {\n        local_88 = (dwarf_section *)local_b0;\n        local_ac._4_4_ = (dwarf_section *)local_b0;\n        local_bc = (cu_tu_set *)0x0;\n        do {\n          if (do_display != 0) {\n            puVar24 = (undefined1 *)0x3159f;\n            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);\n            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_ac);\n            if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }\n            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_98);\n            pcVar7 = (cu_tu_set *)0x0;\n            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar8,local_bc);\n            section_1 = extraout_ECX_00;\n          }\n          if (pdVar1 < local_ac._4_4_) {\n            pdVar12 = (dwarf_section *)section->name;\n            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if ((elf_vma)local_ac != 1) {\n            if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }\n            uVar4 = (int)local_b8 * 4;\n            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;\n            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(pcVar8,local_b8);\n            return 0;\n          }\n          if (do_display != 0) {\n            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined1  [4])0x0;\n            goto LAB_0003165a;\n          }\n          iVar15 = (int)pdVar1 - (int)local_ac._4_4_;\n          iVar13 = iVar15 + 3;\n          if (-1 < iVar15) {\n            iVar13 = iVar15;\n          }\n          shndx_pool_size = iVar13 >> 2;\n          if (shndx_pool == (uint *)0x0) {\n            shndx_pool_used = 0;\n            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);\nLAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          shndx_pool_size = shndx_pool_size + shndx_pool_used;\n          if (shndx_pool_size < (void *)0x3fffffff) {\n            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);\n            goto LAB_00031d8a;\n          }\n          in_stack_ffffff30 = (undefined1 *)0x323ac;\n          xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1);\n          pdVar12 = (dwarf_section *)0x0;\n          ppcVar14 = extraout_ECX_01;\nLAB_000323ac:\n          psVar16 = pcVar7[-1].section_sizes + 7;\nLAB_0003153d:\n          local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16);\nLAB_000313d0:\n          pdVar11 = (dwarf_section *)&pdVar12->filename;\n          puVar24 = in_stack_ffffff30;\n          if (pdVar11 < pdVar1) {\nLAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }\n          }\n          else {\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }\nLAB_0003148f:\n          pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);\n          pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2);\n          section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7);\n          local_bc = pcVar7;\n          if (((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))\n          goto LAB_000314c9;\n          local_88 = (dwarf_section *)local_b0;\n          local_b0 = (undefined1  [4])pdVar11;\n          local_ac._4_4_ = section_1;\n        } while( true );\n      }\n      local_bc = (cu_tu_set *)0x0;\nLAB_000314c9:\n      pdVar12 = (dwarf_section *)section->name;\n      pcVar8 = (char *)dcngettext(0,"Section %s is too small for %d slot\n",\n                                  "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s is too small to contain a CU/TU header\n";\n  }\nLAB_0003156a:\n  local_bc = (cu_tu_set *)0x5;\n  pcVar8 = (char *)dcgettext(0,pcVar8,5);\nLAB_000314f3:\n  warn(pcVar8,pdVar12,local_bc);\n  return 0;\nLAB_0003165a:\n  if (pdVar1 < &local_88->name) {\n    signature_high._0_4_ = (char *)0x0;\n    signature_high._4_4_ = 0;\n    signature_low._0_4_ = 0;\n    signature_low._4_4_ = 0;\n    goto LAB_0003168c;\n  }\n  low = &signature_low;\n  byte_get_64((uchar *)local_88,&signature_high,low);\n  if ((signature_high._4_4_ != 0 || (char *)signature_high != (char *)0x0) ||\n     (signature_low._4_4_ != 0 || (int)signature_low != 0)) {\n    iVar13 = 4;\n    if ((&((dwarf_section *)local_b0)->compressed_name < pdVar1) ||\n       ((pdVar12 = local_ac._4_4_, (uint)local_b0 < pdVar1 &&\n        (iVar13 = (int)pdVar1 - (int)local_b0, iVar13 - 1U < 8)))) {\n      eVar25._0_4_ = (*byte_get)((uchar *)local_b0,iVar13);\n      pdVar12 = (dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25);\n      if ((dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25) <\n          local_ac._4_4_) {\n        pcVar8 = (char *)dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(pcVar8);\n        return 0;\n      }\n    }\n    if (do_display != 0) {\n      low = (elf_vma *)\n            dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),CONCAT44(puVar24,buf),\n                           (char *)signature_high,signature_high._4_4_);\n      pcVar8 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar8,local_b8,low);\n    }\n    if (pdVar12 < pdVar1) {\n      do {\n        ppcVar14 = &pdVar12->compressed_name;\n        if (ppcVar14 < pdVar1) {\n          iVar13 = 4;\n        }\n        else {\n          iVar13 = (int)pdVar1 - (int)pdVar12;\n          if (7 < iVar13 - 1U) goto LAB_000317d8;\n        }\n        eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        if ((elf_vma)eVar25 == 0) goto LAB_000317d8;\n        if (do_display == 0) {\n          if (shndx_pool_used < shndx_pool_size) {\n            peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used);\n            shndx_pool_used = shndx_pool_used + 1;\n                    /* WARNING: Store size is inaccurate */\n            *peVar2 = (elf_vma)eVar25;\n          }\n          else {\n            low = (elf_vma *)0x5;\n            pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(pcVar8);\n          }\n        }\n        else {\n          printf(" %d",(undefined4)(elf_vma)eVar25,low);\n        }\n        pdVar12 = (dwarf_section *)ppcVar14;\n        if (pdVar1 <= ppcVar14) break;\n      } while( true );\n    }\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }\nLAB_0003168c:\n  local_b8 = (undefined1  [4])((int)(uint64_t *)local_b8 + 1);\n  local_88 = (dwarf_section *)&local_88->name;\n  local_b0 = (undefined1  [4])&((dwarf_section *)local_b0)->compressed_name;\n  if (local_bc <= (uint)local_b8) goto LAB_000316a3;\n  goto LAB_0003165a;\nLAB_000317d8:\n  if (do_display == 0) {\n    if (shndx_pool_used < shndx_pool_size) {\n      puVar3 = shndx_pool + shndx_pool_used;\n      shndx_pool_used = shndx_pool_used + 1;\n      *puVar3 = 0;\n    }\n    else {\n      pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(pcVar8);\n    }\n  }\n  else {\n    putchar(10);\n  }\n  goto LAB_0003168c;\n  while( true ) {\n    iVar13 = iVar13 + -1;\n    bVar21 = *(byte *)&pdVar12->uncompressed_name < *pbVar20;\n    bVar22 = *(byte *)&pdVar12->uncompressed_name == *pbVar20;\n    pdVar12 = (dwarf_section *)((int)pdVar12 + (uint)bVar23 * -2 + 1);\n    pbVar20 = pbVar20 + (uint)bVar23 * -2 + 1;\n    if (!bVar22) break;\ncode_r0x00031991:\n    if (iVar13 == 0) break;\n  }\n  bVar22 = !bVar21 && !bVar22;\n  if (do_display == 0) {\n    if (bVar22 == bVar21) {\n      tu_count = (int)(elf_vma)local_98;\n      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);\n      tu_sets = local_78;\n    }\n    else {\n      cu_count = (int)(elf_vma)local_98;\n      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);\n      cu_sets = local_78;\n    }\n    if (local_bc != (cu_tu_set *)0x0) {\nLAB_000319e5:\n      local_a4 = (cu_tu_set *)0x0;\n      pdVar12 = local_88;\n      auVar18 = local_b0;\n      do {\n        ppcVar19 = &pdVar12->name;\n        if (pdVar1 < ppcVar19) {\n          signature_high._0_4_ = (char *)0x0;\n          signature_high._4_4_ = 0;\n          signature_low._0_4_ = 0;\n          signature_low._4_4_ = 0;\n        }\n        else {\n          byte_get_64((uchar *)pdVar12,&signature_high,&signature_low);\n        }\n        if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031a7a:\n          eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n          if ((elf_vma)eVar25 != 0) {\n            if ((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25) {\n              pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);\n              local_b8 = (undefined1  [4])(elf_vma)local_98;\n              goto LAB_00031dd2;\n            }\n            if (do_display == 0) {\n              if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;\n              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\n              *(char **)&local_8c->signature = pdVar12->uncompressed_name;\n              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;\n              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (cu_tu_set *)((int)&local_a4->signature + 1);\n        pdVar12 = (dwarf_section *)ppcVar19;\n        auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;\n      } while (local_a4 < local_bc);\n      if (do_display != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031e1e:\n      eVar25._0_4_ = 0;\n      pdVar12 = local_ac._4_4_;\n      do {\n        eVar25._0_4_ = (elf_vma)((int)(elf_vma)eVar25 + 1);\n        if (&pdVar12->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031e67:\n          local_b4 = (undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          local_b4 = (undefined1  [4])0x0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_00031e67;\n        }\n        if (do_display != 0) {\n          puVar24 = (undefined1 *)0x31e89;\n          pcVar8 = get_DW_SECT_short_name((uint)local_b4);\n          printf(" %8s",pcVar8);\n        }\n        pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n      } while ((uint)(elf_vma)eVar25 < (uint)local_b8);\n      if (do_display != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (cu_tu_set *)0x0) {\n      return 1;\n    }\n  }\n  else {\n    pcVar8 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar8);\n    if (bVar22 == bVar21) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pdVar12 = local_ac._4_4_;\n    if (local_b8 != (undefined1  [4])0x0) {\n      do {\n        ppcVar19 = &pdVar12->compressed_name;\n        if (ppcVar19 < pdVar1) {\n          iVar13 = 4;\nLAB_000321db:\n          eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          eVar25._0_4_ = 0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_000321db;\n        }\n        puVar24 = (undefined1 *)0x321b7;\n        pcVar8 = get_DW_SECT_short_name((uint)(elf_vma)eVar25);\n        printf(" %8s",pcVar8);\n        pdVar12 = (dwarf_section *)ppcVar19;\n      } while (ppcVar14 != ppcVar19);\n    }\n    putchar(10);\n    local_78 = (cu_tu_set *)0x0;\n    if (local_bc != (cu_tu_set *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar8 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar8);\n    if (bVar22 == bVar21) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined1  [4])0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\n  }\n  local_b4 = (undefined1  [4])0x0;\n  auVar18 = local_b0;\n  do {\n    if (pdVar1 < &local_88->name) {\n      signature_high._0_4_ = (char *)0x0;\n      signature_high._4_4_ = 0;\n      signature_low._0_4_ = 0;\n      signature_low._4_4_ = 0;\n    }\n    else {\n      byte_get_64((uchar *)local_88,&signature_high,&signature_low);\n    }\n    if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n      iVar13 = 4;\nLAB_00031f4a:\n      eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n      if ((elf_vma)eVar25 != 0) {\n        if (do_display == 0) {\n          if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031f85:\n            local_b0 = (undefined1  [4])0x0;\n            pdVar12 = (dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98);\n            pdVar11 = local_ac._4_4_;\n            do {\n              local_b0 = (undefined1  [4])((int)local_b0 + 1);\n              if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }\nLAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n            } while ((uint)local_b0 < (uint)local_b8);\n            if (do_display != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)\n          ;\n          pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar10,local_b4,pcVar8);\n          if (local_b8 != (undefined1  [4])0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined1  [4])((int)(uint64_t *)local_b4 + 1);\n    local_88 = (dwarf_section *)&local_88->name;\n    auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;\n  } while ((uint)local_b4 < local_bc);\nLAB_000316a3:\n  if (do_display == 0) {\n    return 1;\n  }\nLAB_000316b0:\n  putchar(10);\n  return 1;\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "process_cu_tu_index(dwarf_section *section,int do_display)" identifier (parameter_list "(dwarf_section *section,int do_display)" ( (parameter_declaration "dwarf_section *section" type_identifier (pointer_declarator "*section" * identifier)) , (parameter_declaration "int do_display" primitive_type identifier) ))) (compound_statement "{\n  dwarf_section *pdVar1;\n  elf_vma *peVar2;\n  uint *puVar3;\n  uint uVar4;\n  _func_elf_vma_uchar_ptr_int *p_Var5;\n  cu_tu_set *pcVar6;\n  cu_tu_set *pcVar7;\n  char *pcVar8;\n  undefined4 uVar9;\n  char *pcVar10;\n  dwarf_section *section_1;\n  dwarf_section *extraout_ECX;\n  dwarf_section *pdVar11;\n  dwarf_section *extraout_ECX_00;\n  dwarf_section *pdVar12;\n  int iVar13;\n  elf_vma eVar25;\n  elf_vma eVar26;\n  elf_vma eVar27;\n  char **extraout_ECX_01;\n  char **ppcVar14;\n  int iVar15;\n  size_t *psVar16;\n  uint uVar17;\n  undefined1 auVar18 [4];\n  char **ppcVar19;\n  byte *pbVar20;\n  bool bVar21;\n  bool bVar22;\n  byte bVar23;\n  elf_vma *low;\n  undefined1 *in_stack_ffffff30;\n  undefined1 *puVar24;\n  cu_tu_set *local_bc;\n  undefined1 local_b8 [4];\n  undefined1 local_b4 [4];\n  undefined1 local_b0 [4];\n  undefined8 local_ac;\n  cu_tu_set *local_a4;\n  elf_vma local_98;\n  cu_tu_set *local_8c;\n  dwarf_section *local_88;\n  cu_tu_set *local_78;\n  dwarf_vma signature_high;\n  dwarf_vma signature_low;\n  char buf [64];\n  \n  bVar23 = 0;\n  pdVar12 = (dwarf_section *)section->start;\n  pcVar7 = *(cu_tu_set **)&section->size;\n  iVar13 = *(int *)((int)&section->size + 4);\n  if (pdVar12 == (dwarf_section *)0x0) {\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s is empty\n";\n  }\n  else {\n    if (iVar13 != 0 || (uint)-iVar13 < (uint)((cu_tu_set *)0x17 < pcVar7)) {\n      local_b0 = (undefined1  [4])&pdVar12->name;\n      pdVar1 = (dwarf_section *)((int)pcVar7->section_offsets + (int)&pdVar12[-1].num_relocs);\n      ppcVar14 = &pdVar12->compressed_name;\n      if (ppcVar14 < pdVar1) {\n        pcVar6 = (cu_tu_set *)0x4;\n      }\n      else if ((pdVar1 <= pdVar12) ||\n              (pcVar6 = pcVar7,\n              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU))) {\n        local_ac._0_4_ = 0;\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = (cu_tu_set *)&byte_get;\n      local_ac._0_4_ = (*byte_get)((uchar *)pdVar12,(int)pcVar6);\n      if ((uint)(elf_vma)local_ac < 2) {\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      if ((uint)local_b0 < pdVar1) {\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((ppcVar14 < pdVar1) &&\n         ((undefined1 *)((int)pcVar7[-1].section_sizes + 0x1bU) < (undefined1 *)0x8))\n      goto LAB_000323ac;\n      pdVar11 = (dwarf_section *)&pdVar12->filename;\n      local_b8 = (undefined1  [4])0x0;\n      puVar24 = in_stack_ffffff30;\n      if (pdVar11 < pdVar1) goto LAB_000313e1;\nLAB_00031338:\n      puVar24 = in_stack_ffffff30;\n      local_b0 = (undefined1  [4])&pdVar12->start;\n      if ((uint)local_b0 < pdVar1) {\n        local_98._0_4_ = 0;\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98._0_4_ = 0;\n      section_1 = pdVar11;\nLAB_0003134f:\n      if (pdVar12 <= (uint)local_b0) {\n        local_88 = (dwarf_section *)local_b0;\n        local_ac._4_4_ = (dwarf_section *)local_b0;\n        local_bc = (cu_tu_set *)0x0;\n        do {\n          if (do_display != 0) {\n            puVar24 = (undefined1 *)0x3159f;\n            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);\n            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_ac);\n            if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }\n            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_98);\n            pcVar7 = (cu_tu_set *)0x0;\n            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar8,local_bc);\n            section_1 = extraout_ECX_00;\n          }\n          if (pdVar1 < local_ac._4_4_) {\n            pdVar12 = (dwarf_section *)section->name;\n            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if ((elf_vma)local_ac != 1) {\n            if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }\n            uVar4 = (int)local_b8 * 4;\n            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;\n            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(pcVar8,local_b8);\n            return 0;\n          }\n          if (do_display != 0) {\n            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined1  [4])0x0;\n            goto LAB_0003165a;\n          }\n          iVar15 = (int)pdVar1 - (int)local_ac._4_4_;\n          iVar13 = iVar15 + 3;\n          if (-1 < iVar15) {\n            iVar13 = iVar15;\n          }\n          shndx_pool_size = iVar13 >> 2;\n          if (shndx_pool == (uint *)0x0) {\n            shndx_pool_used = 0;\n            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);\nLAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          shndx_pool_size = shndx_pool_size + shndx_pool_used;\n          if (shndx_pool_size < (void *)0x3fffffff) {\n            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);\n            goto LAB_00031d8a;\n          }\n          in_stack_ffffff30 = (undefined1 *)0x323ac;\n          xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1);\n          pdVar12 = (dwarf_section *)0x0;\n          ppcVar14 = extraout_ECX_01;\nLAB_000323ac:\n          psVar16 = pcVar7[-1].section_sizes + 7;\nLAB_0003153d:\n          local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16);\nLAB_000313d0:\n          pdVar11 = (dwarf_section *)&pdVar12->filename;\n          puVar24 = in_stack_ffffff30;\n          if (pdVar11 < pdVar1) {\nLAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }\n          }\n          else {\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }\nLAB_0003148f:\n          pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);\n          pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2);\n          section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7);\n          local_bc = pcVar7;\n          if (((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))\n          goto LAB_000314c9;\n          local_88 = (dwarf_section *)local_b0;\n          local_b0 = (undefined1  [4])pdVar11;\n          local_ac._4_4_ = section_1;\n        } while( true );\n      }\n      local_bc = (cu_tu_set *)0x0;\nLAB_000314c9:\n      pdVar12 = (dwarf_section *)section->name;\n      pcVar8 = (char *)dcngettext(0,"Section %s is too small for %d slot\n",\n                                  "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s is too small to contain a CU/TU header\n";\n  }\nLAB_0003156a:\n  local_bc = (cu_tu_set *)0x5;\n  pcVar8 = (char *)dcgettext(0,pcVar8,5);\nLAB_000314f3:\n  warn(pcVar8,pdVar12,local_bc);\n  return 0;\nLAB_0003165a:\n  if (pdVar1 < &local_88->name) {\n    signature_high._0_4_ = (char *)0x0;\n    signature_high._4_4_ = 0;\n    signature_low._0_4_ = 0;\n    signature_low._4_4_ = 0;\n    goto LAB_0003168c;\n  }\n  low = &signature_low;\n  byte_get_64((uchar *)local_88,&signature_high,low);\n  if ((signature_high._4_4_ != 0 || (char *)signature_high != (char *)0x0) ||\n     (signature_low._4_4_ != 0 || (int)signature_low != 0)) {\n    iVar13 = 4;\n    if ((&((dwarf_section *)local_b0)->compressed_name < pdVar1) ||\n       ((pdVar12 = local_ac._4_4_, (uint)local_b0 < pdVar1 &&\n        (iVar13 = (int)pdVar1 - (int)local_b0, iVar13 - 1U < 8)))) {\n      eVar25._0_4_ = (*byte_get)((uchar *)local_b0,iVar13);\n      pdVar12 = (dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25);\n      if ((dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25) <\n          local_ac._4_4_) {\n        pcVar8 = (char *)dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(pcVar8);\n        return 0;\n      }\n    }\n    if (do_display != 0) {\n      low = (elf_vma *)\n            dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),CONCAT44(puVar24,buf),\n                           (char *)signature_high,signature_high._4_4_);\n      pcVar8 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar8,local_b8,low);\n    }\n    if (pdVar12 < pdVar1) {\n      do {\n        ppcVar14 = &pdVar12->compressed_name;\n        if (ppcVar14 < pdVar1) {\n          iVar13 = 4;\n        }\n        else {\n          iVar13 = (int)pdVar1 - (int)pdVar12;\n          if (7 < iVar13 - 1U) goto LAB_000317d8;\n        }\n        eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        if ((elf_vma)eVar25 == 0) goto LAB_000317d8;\n        if (do_display == 0) {\n          if (shndx_pool_used < shndx_pool_size) {\n            peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used);\n            shndx_pool_used = shndx_pool_used + 1;\n                    /* WARNING: Store size is inaccurate */\n            *peVar2 = (elf_vma)eVar25;\n          }\n          else {\n            low = (elf_vma *)0x5;\n            pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(pcVar8);\n          }\n        }\n        else {\n          printf(" %d",(undefined4)(elf_vma)eVar25,low);\n        }\n        pdVar12 = (dwarf_section *)ppcVar14;\n        if (pdVar1 <= ppcVar14) break;\n      } while( true );\n    }\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }\nLAB_0003168c:\n  local_b8 = (undefined1  [4])((int)(uint64_t *)local_b8 + 1);\n  local_88 = (dwarf_section *)&local_88->name;\n  local_b0 = (undefined1  [4])&((dwarf_section *)local_b0)->compressed_name;\n  if (local_bc <= (uint)local_b8) goto LAB_000316a3;\n  goto LAB_0003165a;\nLAB_000317d8:\n  if (do_display == 0) {\n    if (shndx_pool_used < shndx_pool_size) {\n      puVar3 = shndx_pool + shndx_pool_used;\n      shndx_pool_used = shndx_pool_used + 1;\n      *puVar3 = 0;\n    }\n    else {\n      pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(pcVar8);\n    }\n  }\n  else {\n    putchar(10);\n  }\n  goto LAB_0003168c;\n  while( true ) {\n    iVar13 = iVar13 + -1;\n    bVar21 = *(byte *)&pdVar12->uncompressed_name < *pbVar20;\n    bVar22 = *(byte *)&pdVar12->uncompressed_name == *pbVar20;\n    pdVar12 = (dwarf_section *)((int)pdVar12 + (uint)bVar23 * -2 + 1);\n    pbVar20 = pbVar20 + (uint)bVar23 * -2 + 1;\n    if (!bVar22) break;\ncode_r0x00031991:\n    if (iVar13 == 0) break;\n  }\n  bVar22 = !bVar21 && !bVar22;\n  if (do_display == 0) {\n    if (bVar22 == bVar21) {\n      tu_count = (int)(elf_vma)local_98;\n      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);\n      tu_sets = local_78;\n    }\n    else {\n      cu_count = (int)(elf_vma)local_98;\n      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);\n      cu_sets = local_78;\n    }\n    if (local_bc != (cu_tu_set *)0x0) {\nLAB_000319e5:\n      local_a4 = (cu_tu_set *)0x0;\n      pdVar12 = local_88;\n      auVar18 = local_b0;\n      do {\n        ppcVar19 = &pdVar12->name;\n        if (pdVar1 < ppcVar19) {\n          signature_high._0_4_ = (char *)0x0;\n          signature_high._4_4_ = 0;\n          signature_low._0_4_ = 0;\n          signature_low._4_4_ = 0;\n        }\n        else {\n          byte_get_64((uchar *)pdVar12,&signature_high,&signature_low);\n        }\n        if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031a7a:\n          eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n          if ((elf_vma)eVar25 != 0) {\n            if ((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25) {\n              pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);\n              local_b8 = (undefined1  [4])(elf_vma)local_98;\n              goto LAB_00031dd2;\n            }\n            if (do_display == 0) {\n              if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;\n              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\n              *(char **)&local_8c->signature = pdVar12->uncompressed_name;\n              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;\n              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (cu_tu_set *)((int)&local_a4->signature + 1);\n        pdVar12 = (dwarf_section *)ppcVar19;\n        auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;\n      } while (local_a4 < local_bc);\n      if (do_display != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031e1e:\n      eVar25._0_4_ = 0;\n      pdVar12 = local_ac._4_4_;\n      do {\n        eVar25._0_4_ = (elf_vma)((int)(elf_vma)eVar25 + 1);\n        if (&pdVar12->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031e67:\n          local_b4 = (undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          local_b4 = (undefined1  [4])0x0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_00031e67;\n        }\n        if (do_display != 0) {\n          puVar24 = (undefined1 *)0x31e89;\n          pcVar8 = get_DW_SECT_short_name((uint)local_b4);\n          printf(" %8s",pcVar8);\n        }\n        pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n      } while ((uint)(elf_vma)eVar25 < (uint)local_b8);\n      if (do_display != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (cu_tu_set *)0x0) {\n      return 1;\n    }\n  }\n  else {\n    pcVar8 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar8);\n    if (bVar22 == bVar21) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pdVar12 = local_ac._4_4_;\n    if (local_b8 != (undefined1  [4])0x0) {\n      do {\n        ppcVar19 = &pdVar12->compressed_name;\n        if (ppcVar19 < pdVar1) {\n          iVar13 = 4;\nLAB_000321db:\n          eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          eVar25._0_4_ = 0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_000321db;\n        }\n        puVar24 = (undefined1 *)0x321b7;\n        pcVar8 = get_DW_SECT_short_name((uint)(elf_vma)eVar25);\n        printf(" %8s",pcVar8);\n        pdVar12 = (dwarf_section *)ppcVar19;\n      } while (ppcVar14 != ppcVar19);\n    }\n    putchar(10);\n    local_78 = (cu_tu_set *)0x0;\n    if (local_bc != (cu_tu_set *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar8 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar8);\n    if (bVar22 == bVar21) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined1  [4])0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\n  }\n  local_b4 = (undefined1  [4])0x0;\n  auVar18 = local_b0;\n  do {\n    if (pdVar1 < &local_88->name) {\n      signature_high._0_4_ = (char *)0x0;\n      signature_high._4_4_ = 0;\n      signature_low._0_4_ = 0;\n      signature_low._4_4_ = 0;\n    }\n    else {\n      byte_get_64((uchar *)local_88,&signature_high,&signature_low);\n    }\n    if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n      iVar13 = 4;\nLAB_00031f4a:\n      eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n      if ((elf_vma)eVar25 != 0) {\n        if (do_display == 0) {\n          if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031f85:\n            local_b0 = (undefined1  [4])0x0;\n            pdVar12 = (dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98);\n            pdVar11 = local_ac._4_4_;\n            do {\n              local_b0 = (undefined1  [4])((int)local_b0 + 1);\n              if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }\nLAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n            } while ((uint)local_b0 < (uint)local_b8);\n            if (do_display != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)\n          ;\n          pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar10,local_b4,pcVar8);\n          if (local_b8 != (undefined1  [4])0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined1  [4])((int)(uint64_t *)local_b4 + 1);\n    local_88 = (dwarf_section *)&local_88->name;\n    auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;\n  } while ((uint)local_b4 < local_bc);\nLAB_000316a3:\n  if (do_display == 0) {\n    return 1;\n  }\nLAB_000316b0:\n  putchar(10);\n  return 1;\n}" { (declaration "dwarf_section *pdVar1;" type_identifier (pointer_declarator "*pdVar1" * identifier) ;) (declaration "elf_vma *peVar2;" type_identifier (pointer_declarator "*peVar2" * identifier) ;) (declaration "uint *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "_func_elf_vma_uchar_ptr_int *p_Var5;" type_identifier (pointer_declarator "*p_Var5" * identifier) ;) (declaration "cu_tu_set *pcVar6;" type_identifier (pointer_declarator "*pcVar6" * identifier) ;) (declaration "cu_tu_set *pcVar7;" type_identifier (pointer_declarator "*pcVar7" * identifier) ;) (declaration "char *pcVar8;" primitive_type (pointer_declarator "*pcVar8" * identifier) ;) (declaration "undefined4 uVar9;" type_identifier identifier ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "dwarf_section *section_1;" type_identifier (pointer_declarator "*section_1" * identifier) ;) (declaration "dwarf_section *extraout_ECX;" type_identifier (pointer_declarator "*extraout_ECX" * identifier) ;) (declaration "dwarf_section *pdVar11;" type_identifier (pointer_declarator "*pdVar11" * identifier) ;) (declaration "dwarf_section *extraout_ECX_00;" type_identifier (pointer_declarator "*extraout_ECX_00" * identifier) ;) (declaration "dwarf_section *pdVar12;" type_identifier (pointer_declarator "*pdVar12" * identifier) ;) (declaration "int iVar13;" primitive_type identifier ;) (declaration "elf_vma eVar25;" type_identifier identifier ;) (declaration "elf_vma eVar26;" type_identifier identifier ;) (declaration "elf_vma eVar27;" type_identifier identifier ;) (declaration "char **extraout_ECX_01;" primitive_type (pointer_declarator "**extraout_ECX_01" * (pointer_declarator "*extraout_ECX_01" * identifier)) ;) (declaration "char **ppcVar14;" primitive_type (pointer_declarator "**ppcVar14" * (pointer_declarator "*ppcVar14" * identifier)) ;) (declaration "int iVar15;" primitive_type identifier ;) (declaration "size_t *psVar16;" primitive_type (pointer_declarator "*psVar16" * identifier) ;) (declaration "uint uVar17;" type_identifier identifier ;) (declaration "undefined1 auVar18 [4];" type_identifier (array_declarator "auVar18 [4]" identifier [ number_literal ]) ;) (declaration "char **ppcVar19;" primitive_type (pointer_declarator "**ppcVar19" * (pointer_declarator "*ppcVar19" * identifier)) ;) (declaration "byte *pbVar20;" type_identifier (pointer_declarator "*pbVar20" * identifier) ;) (declaration "bool bVar21;" primitive_type identifier ;) (declaration "bool bVar22;" primitive_type identifier ;) (declaration "byte bVar23;" type_identifier identifier ;) (declaration "elf_vma *low;" type_identifier (pointer_declarator "*low" * identifier) ;) (declaration "undefined1 *in_stack_ffffff30;" type_identifier (pointer_declarator "*in_stack_ffffff30" * identifier) ;) (declaration "undefined1 *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "cu_tu_set *local_bc;" type_identifier (pointer_declarator "*local_bc" * identifier) ;) (declaration "undefined1 local_b8 [4];" type_identifier (array_declarator "local_b8 [4]" identifier [ number_literal ]) ;) (declaration "undefined1 local_b4 [4];" type_identifier (array_declarator "local_b4 [4]" identifier [ number_literal ]) ;) (declaration "undefined1 local_b0 [4];" type_identifier (array_declarator "local_b0 [4]" identifier [ number_literal ]) ;) (declaration "undefined8 local_ac;" type_identifier identifier ;) (declaration "cu_tu_set *local_a4;" type_identifier (pointer_declarator "*local_a4" * identifier) ;) (declaration "elf_vma local_98;" type_identifier identifier ;) (declaration "cu_tu_set *local_8c;" type_identifier (pointer_declarator "*local_8c" * identifier) ;) (declaration "dwarf_section *local_88;" type_identifier (pointer_declarator "*local_88" * identifier) ;) (declaration "cu_tu_set *local_78;" type_identifier (pointer_declarator "*local_78" * identifier) ;) (declaration "dwarf_vma signature_high;" type_identifier identifier ;) (declaration "dwarf_vma signature_low;" type_identifier identifier ;) (declaration "char buf [64];" primitive_type (array_declarator "buf [64]" identifier [ number_literal ]) ;) (expression_statement "bVar23 = 0;" (assignment_expression "bVar23 = 0" identifier = number_literal) ;) (expression_statement "pdVar12 = (dwarf_section *)section->start;" (assignment_expression "pdVar12 = (dwarf_section *)section->start" identifier = (cast_expression "(dwarf_section *)section->start" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "section->start" identifier -> field_identifier))) ;) (expression_statement "pcVar7 = *(cu_tu_set **)&section->size;" (assignment_expression "pcVar7 = *(cu_tu_set **)&section->size" identifier = (pointer_expression "*(cu_tu_set **)&section->size" * (cast_expression "(cu_tu_set **)&section->size" ( (type_descriptor "cu_tu_set **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&section->size" & (field_expression "section->size" identifier -> field_identifier))))) ;) (expression_statement "iVar13 = *(int *)((int)&section->size + 4);" (assignment_expression "iVar13 = *(int *)((int)&section->size + 4)" identifier = (pointer_expression "*(int *)((int)&section->size + 4)" * (cast_expression "(int *)((int)&section->size + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&section->size + 4)" ( (binary_expression "(int)&section->size + 4" (cast_expression "(int)&section->size" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&section->size" & (field_expression "section->size" identifier -> field_identifier))) + number_literal) ))))) ;) (if_statement "if (pdVar12 == (dwarf_section *)0x0) {\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s is empty\n";\n  }\n  else {\n    if (iVar13 != 0 || (uint)-iVar13 < (uint)((cu_tu_set *)0x17 < pcVar7)) {\n      local_b0 = (undefined1  [4])&pdVar12->name;\n      pdVar1 = (dwarf_section *)((int)pcVar7->section_offsets + (int)&pdVar12[-1].num_relocs);\n      ppcVar14 = &pdVar12->compressed_name;\n      if (ppcVar14 < pdVar1) {\n        pcVar6 = (cu_tu_set *)0x4;\n      }\n      else if ((pdVar1 <= pdVar12) ||\n              (pcVar6 = pcVar7,\n              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU))) {\n        local_ac._0_4_ = 0;\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = (cu_tu_set *)&byte_get;\n      local_ac._0_4_ = (*byte_get)((uchar *)pdVar12,(int)pcVar6);\n      if ((uint)(elf_vma)local_ac < 2) {\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      if ((uint)local_b0 < pdVar1) {\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((ppcVar14 < pdVar1) &&\n         ((undefined1 *)((int)pcVar7[-1].section_sizes + 0x1bU) < (undefined1 *)0x8))\n      goto LAB_000323ac;\n      pdVar11 = (dwarf_section *)&pdVar12->filename;\n      local_b8 = (undefined1  [4])0x0;\n      puVar24 = in_stack_ffffff30;\n      if (pdVar11 < pdVar1) goto LAB_000313e1;\nLAB_00031338:\n      puVar24 = in_stack_ffffff30;\n      local_b0 = (undefined1  [4])&pdVar12->start;\n      if ((uint)local_b0 < pdVar1) {\n        local_98._0_4_ = 0;\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98._0_4_ = 0;\n      section_1 = pdVar11;\nLAB_0003134f:\n      if (pdVar12 <= (uint)local_b0) {\n        local_88 = (dwarf_section *)local_b0;\n        local_ac._4_4_ = (dwarf_section *)local_b0;\n        local_bc = (cu_tu_set *)0x0;\n        do {\n          if (do_display != 0) {\n            puVar24 = (undefined1 *)0x3159f;\n            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);\n            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_ac);\n            if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }\n            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_98);\n            pcVar7 = (cu_tu_set *)0x0;\n            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar8,local_bc);\n            section_1 = extraout_ECX_00;\n          }\n          if (pdVar1 < local_ac._4_4_) {\n            pdVar12 = (dwarf_section *)section->name;\n            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if ((elf_vma)local_ac != 1) {\n            if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }\n            uVar4 = (int)local_b8 * 4;\n            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;\n            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(pcVar8,local_b8);\n            return 0;\n          }\n          if (do_display != 0) {\n            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined1  [4])0x0;\n            goto LAB_0003165a;\n          }\n          iVar15 = (int)pdVar1 - (int)local_ac._4_4_;\n          iVar13 = iVar15 + 3;\n          if (-1 < iVar15) {\n            iVar13 = iVar15;\n          }\n          shndx_pool_size = iVar13 >> 2;\n          if (shndx_pool == (uint *)0x0) {\n            shndx_pool_used = 0;\n            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);\nLAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          shndx_pool_size = shndx_pool_size + shndx_pool_used;\n          if (shndx_pool_size < (void *)0x3fffffff) {\n            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);\n            goto LAB_00031d8a;\n          }\n          in_stack_ffffff30 = (undefined1 *)0x323ac;\n          xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1);\n          pdVar12 = (dwarf_section *)0x0;\n          ppcVar14 = extraout_ECX_01;\nLAB_000323ac:\n          psVar16 = pcVar7[-1].section_sizes + 7;\nLAB_0003153d:\n          local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16);\nLAB_000313d0:\n          pdVar11 = (dwarf_section *)&pdVar12->filename;\n          puVar24 = in_stack_ffffff30;\n          if (pdVar11 < pdVar1) {\nLAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }\n          }\n          else {\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }\nLAB_0003148f:\n          pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);\n          pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2);\n          section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7);\n          local_bc = pcVar7;\n          if (((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))\n          goto LAB_000314c9;\n          local_88 = (dwarf_section *)local_b0;\n          local_b0 = (undefined1  [4])pdVar11;\n          local_ac._4_4_ = section_1;\n        } while( true );\n      }\n      local_bc = (cu_tu_set *)0x0;\nLAB_000314c9:\n      pdVar12 = (dwarf_section *)section->name;\n      pcVar8 = (char *)dcngettext(0,"Section %s is too small for %d slot\n",\n                                  "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s is too small to contain a CU/TU header\n";\n  }" if (parenthesized_expression "(pdVar12 == (dwarf_section *)0x0)" ( (binary_expression "pdVar12 == (dwarf_section *)0x0" identifier == (cast_expression "(dwarf_section *)0x0" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s is empty\n";\n  }" { (expression_statement "pdVar12 = (dwarf_section *)section->name;" (assignment_expression "pdVar12 = (dwarf_section *)section->name" identifier = (cast_expression "(dwarf_section *)section->name" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "section->name" identifier -> field_identifier))) ;) (expression_statement "pcVar8 = "Section %s is empty\n";" (assignment_expression "pcVar8 = "Section %s is empty\n"" identifier = (string_literal ""Section %s is empty\n"" " string_content escape_sequence ")) ;) }) (else_clause "else {\n    if (iVar13 != 0 || (uint)-iVar13 < (uint)((cu_tu_set *)0x17 < pcVar7)) {\n      local_b0 = (undefined1  [4])&pdVar12->name;\n      pdVar1 = (dwarf_section *)((int)pcVar7->section_offsets + (int)&pdVar12[-1].num_relocs);\n      ppcVar14 = &pdVar12->compressed_name;\n      if (ppcVar14 < pdVar1) {\n        pcVar6 = (cu_tu_set *)0x4;\n      }\n      else if ((pdVar1 <= pdVar12) ||\n              (pcVar6 = pcVar7,\n              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU))) {\n        local_ac._0_4_ = 0;\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = (cu_tu_set *)&byte_get;\n      local_ac._0_4_ = (*byte_get)((uchar *)pdVar12,(int)pcVar6);\n      if ((uint)(elf_vma)local_ac < 2) {\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      if ((uint)local_b0 < pdVar1) {\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((ppcVar14 < pdVar1) &&\n         ((undefined1 *)((int)pcVar7[-1].section_sizes + 0x1bU) < (undefined1 *)0x8))\n      goto LAB_000323ac;\n      pdVar11 = (dwarf_section *)&pdVar12->filename;\n      local_b8 = (undefined1  [4])0x0;\n      puVar24 = in_stack_ffffff30;\n      if (pdVar11 < pdVar1) goto LAB_000313e1;\nLAB_00031338:\n      puVar24 = in_stack_ffffff30;\n      local_b0 = (undefined1  [4])&pdVar12->start;\n      if ((uint)local_b0 < pdVar1) {\n        local_98._0_4_ = 0;\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98._0_4_ = 0;\n      section_1 = pdVar11;\nLAB_0003134f:\n      if (pdVar12 <= (uint)local_b0) {\n        local_88 = (dwarf_section *)local_b0;\n        local_ac._4_4_ = (dwarf_section *)local_b0;\n        local_bc = (cu_tu_set *)0x0;\n        do {\n          if (do_display != 0) {\n            puVar24 = (undefined1 *)0x3159f;\n            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);\n            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_ac);\n            if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }\n            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_98);\n            pcVar7 = (cu_tu_set *)0x0;\n            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar8,local_bc);\n            section_1 = extraout_ECX_00;\n          }\n          if (pdVar1 < local_ac._4_4_) {\n            pdVar12 = (dwarf_section *)section->name;\n            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if ((elf_vma)local_ac != 1) {\n            if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }\n            uVar4 = (int)local_b8 * 4;\n            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;\n            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(pcVar8,local_b8);\n            return 0;\n          }\n          if (do_display != 0) {\n            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined1  [4])0x0;\n            goto LAB_0003165a;\n          }\n          iVar15 = (int)pdVar1 - (int)local_ac._4_4_;\n          iVar13 = iVar15 + 3;\n          if (-1 < iVar15) {\n            iVar13 = iVar15;\n          }\n          shndx_pool_size = iVar13 >> 2;\n          if (shndx_pool == (uint *)0x0) {\n            shndx_pool_used = 0;\n            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);\nLAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          shndx_pool_size = shndx_pool_size + shndx_pool_used;\n          if (shndx_pool_size < (void *)0x3fffffff) {\n            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);\n            goto LAB_00031d8a;\n          }\n          in_stack_ffffff30 = (undefined1 *)0x323ac;\n          xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1);\n          pdVar12 = (dwarf_section *)0x0;\n          ppcVar14 = extraout_ECX_01;\nLAB_000323ac:\n          psVar16 = pcVar7[-1].section_sizes + 7;\nLAB_0003153d:\n          local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16);\nLAB_000313d0:\n          pdVar11 = (dwarf_section *)&pdVar12->filename;\n          puVar24 = in_stack_ffffff30;\n          if (pdVar11 < pdVar1) {\nLAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }\n          }\n          else {\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }\nLAB_0003148f:\n          pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);\n          pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2);\n          section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7);\n          local_bc = pcVar7;\n          if (((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))\n          goto LAB_000314c9;\n          local_88 = (dwarf_section *)local_b0;\n          local_b0 = (undefined1  [4])pdVar11;\n          local_ac._4_4_ = section_1;\n        } while( true );\n      }\n      local_bc = (cu_tu_set *)0x0;\nLAB_000314c9:\n      pdVar12 = (dwarf_section *)section->name;\n      pcVar8 = (char *)dcngettext(0,"Section %s is too small for %d slot\n",\n                                  "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s is too small to contain a CU/TU header\n";\n  }" else (compound_statement "{\n    if (iVar13 != 0 || (uint)-iVar13 < (uint)((cu_tu_set *)0x17 < pcVar7)) {\n      local_b0 = (undefined1  [4])&pdVar12->name;\n      pdVar1 = (dwarf_section *)((int)pcVar7->section_offsets + (int)&pdVar12[-1].num_relocs);\n      ppcVar14 = &pdVar12->compressed_name;\n      if (ppcVar14 < pdVar1) {\n        pcVar6 = (cu_tu_set *)0x4;\n      }\n      else if ((pdVar1 <= pdVar12) ||\n              (pcVar6 = pcVar7,\n              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU))) {\n        local_ac._0_4_ = 0;\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = (cu_tu_set *)&byte_get;\n      local_ac._0_4_ = (*byte_get)((uchar *)pdVar12,(int)pcVar6);\n      if ((uint)(elf_vma)local_ac < 2) {\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      if ((uint)local_b0 < pdVar1) {\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((ppcVar14 < pdVar1) &&\n         ((undefined1 *)((int)pcVar7[-1].section_sizes + 0x1bU) < (undefined1 *)0x8))\n      goto LAB_000323ac;\n      pdVar11 = (dwarf_section *)&pdVar12->filename;\n      local_b8 = (undefined1  [4])0x0;\n      puVar24 = in_stack_ffffff30;\n      if (pdVar11 < pdVar1) goto LAB_000313e1;\nLAB_00031338:\n      puVar24 = in_stack_ffffff30;\n      local_b0 = (undefined1  [4])&pdVar12->start;\n      if ((uint)local_b0 < pdVar1) {\n        local_98._0_4_ = 0;\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98._0_4_ = 0;\n      section_1 = pdVar11;\nLAB_0003134f:\n      if (pdVar12 <= (uint)local_b0) {\n        local_88 = (dwarf_section *)local_b0;\n        local_ac._4_4_ = (dwarf_section *)local_b0;\n        local_bc = (cu_tu_set *)0x0;\n        do {\n          if (do_display != 0) {\n            puVar24 = (undefined1 *)0x3159f;\n            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);\n            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_ac);\n            if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }\n            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_98);\n            pcVar7 = (cu_tu_set *)0x0;\n            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar8,local_bc);\n            section_1 = extraout_ECX_00;\n          }\n          if (pdVar1 < local_ac._4_4_) {\n            pdVar12 = (dwarf_section *)section->name;\n            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if ((elf_vma)local_ac != 1) {\n            if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }\n            uVar4 = (int)local_b8 * 4;\n            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;\n            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(pcVar8,local_b8);\n            return 0;\n          }\n          if (do_display != 0) {\n            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined1  [4])0x0;\n            goto LAB_0003165a;\n          }\n          iVar15 = (int)pdVar1 - (int)local_ac._4_4_;\n          iVar13 = iVar15 + 3;\n          if (-1 < iVar15) {\n            iVar13 = iVar15;\n          }\n          shndx_pool_size = iVar13 >> 2;\n          if (shndx_pool == (uint *)0x0) {\n            shndx_pool_used = 0;\n            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);\nLAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          shndx_pool_size = shndx_pool_size + shndx_pool_used;\n          if (shndx_pool_size < (void *)0x3fffffff) {\n            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);\n            goto LAB_00031d8a;\n          }\n          in_stack_ffffff30 = (undefined1 *)0x323ac;\n          xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1);\n          pdVar12 = (dwarf_section *)0x0;\n          ppcVar14 = extraout_ECX_01;\nLAB_000323ac:\n          psVar16 = pcVar7[-1].section_sizes + 7;\nLAB_0003153d:\n          local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16);\nLAB_000313d0:\n          pdVar11 = (dwarf_section *)&pdVar12->filename;\n          puVar24 = in_stack_ffffff30;\n          if (pdVar11 < pdVar1) {\nLAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }\n          }\n          else {\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }\nLAB_0003148f:\n          pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);\n          pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2);\n          section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7);\n          local_bc = pcVar7;\n          if (((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))\n          goto LAB_000314c9;\n          local_88 = (dwarf_section *)local_b0;\n          local_b0 = (undefined1  [4])pdVar11;\n          local_ac._4_4_ = section_1;\n        } while( true );\n      }\n      local_bc = (cu_tu_set *)0x0;\nLAB_000314c9:\n      pdVar12 = (dwarf_section *)section->name;\n      pcVar8 = (char *)dcngettext(0,"Section %s is too small for %d slot\n",\n                                  "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s is too small to contain a CU/TU header\n";\n  }" { (if_statement "if (iVar13 != 0 || (uint)-iVar13 < (uint)((cu_tu_set *)0x17 < pcVar7)) {\n      local_b0 = (undefined1  [4])&pdVar12->name;\n      pdVar1 = (dwarf_section *)((int)pcVar7->section_offsets + (int)&pdVar12[-1].num_relocs);\n      ppcVar14 = &pdVar12->compressed_name;\n      if (ppcVar14 < pdVar1) {\n        pcVar6 = (cu_tu_set *)0x4;\n      }\n      else if ((pdVar1 <= pdVar12) ||\n              (pcVar6 = pcVar7,\n              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU))) {\n        local_ac._0_4_ = 0;\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = (cu_tu_set *)&byte_get;\n      local_ac._0_4_ = (*byte_get)((uchar *)pdVar12,(int)pcVar6);\n      if ((uint)(elf_vma)local_ac < 2) {\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      if ((uint)local_b0 < pdVar1) {\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((ppcVar14 < pdVar1) &&\n         ((undefined1 *)((int)pcVar7[-1].section_sizes + 0x1bU) < (undefined1 *)0x8))\n      goto LAB_000323ac;\n      pdVar11 = (dwarf_section *)&pdVar12->filename;\n      local_b8 = (undefined1  [4])0x0;\n      puVar24 = in_stack_ffffff30;\n      if (pdVar11 < pdVar1) goto LAB_000313e1;\nLAB_00031338:\n      puVar24 = in_stack_ffffff30;\n      local_b0 = (undefined1  [4])&pdVar12->start;\n      if ((uint)local_b0 < pdVar1) {\n        local_98._0_4_ = 0;\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98._0_4_ = 0;\n      section_1 = pdVar11;\nLAB_0003134f:\n      if (pdVar12 <= (uint)local_b0) {\n        local_88 = (dwarf_section *)local_b0;\n        local_ac._4_4_ = (dwarf_section *)local_b0;\n        local_bc = (cu_tu_set *)0x0;\n        do {\n          if (do_display != 0) {\n            puVar24 = (undefined1 *)0x3159f;\n            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);\n            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_ac);\n            if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }\n            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_98);\n            pcVar7 = (cu_tu_set *)0x0;\n            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar8,local_bc);\n            section_1 = extraout_ECX_00;\n          }\n          if (pdVar1 < local_ac._4_4_) {\n            pdVar12 = (dwarf_section *)section->name;\n            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if ((elf_vma)local_ac != 1) {\n            if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }\n            uVar4 = (int)local_b8 * 4;\n            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;\n            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(pcVar8,local_b8);\n            return 0;\n          }\n          if (do_display != 0) {\n            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined1  [4])0x0;\n            goto LAB_0003165a;\n          }\n          iVar15 = (int)pdVar1 - (int)local_ac._4_4_;\n          iVar13 = iVar15 + 3;\n          if (-1 < iVar15) {\n            iVar13 = iVar15;\n          }\n          shndx_pool_size = iVar13 >> 2;\n          if (shndx_pool == (uint *)0x0) {\n            shndx_pool_used = 0;\n            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);\nLAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          shndx_pool_size = shndx_pool_size + shndx_pool_used;\n          if (shndx_pool_size < (void *)0x3fffffff) {\n            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);\n            goto LAB_00031d8a;\n          }\n          in_stack_ffffff30 = (undefined1 *)0x323ac;\n          xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1);\n          pdVar12 = (dwarf_section *)0x0;\n          ppcVar14 = extraout_ECX_01;\nLAB_000323ac:\n          psVar16 = pcVar7[-1].section_sizes + 7;\nLAB_0003153d:\n          local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16);\nLAB_000313d0:\n          pdVar11 = (dwarf_section *)&pdVar12->filename;\n          puVar24 = in_stack_ffffff30;\n          if (pdVar11 < pdVar1) {\nLAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }\n          }\n          else {\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }\nLAB_0003148f:\n          pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);\n          pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2);\n          section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7);\n          local_bc = pcVar7;\n          if (((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))\n          goto LAB_000314c9;\n          local_88 = (dwarf_section *)local_b0;\n          local_b0 = (undefined1  [4])pdVar11;\n          local_ac._4_4_ = section_1;\n        } while( true );\n      }\n      local_bc = (cu_tu_set *)0x0;\nLAB_000314c9:\n      pdVar12 = (dwarf_section *)section->name;\n      pcVar8 = (char *)dcngettext(0,"Section %s is too small for %d slot\n",\n                                  "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }" if (parenthesized_expression "(iVar13 != 0 || (uint)-iVar13 < (uint)((cu_tu_set *)0x17 < pcVar7))" ( (binary_expression "iVar13 != 0 || (uint)-iVar13 < (uint)((cu_tu_set *)0x17 < pcVar7)" (binary_expression "iVar13 != 0" identifier != number_literal) || (binary_expression "(uint)-iVar13 < (uint)((cu_tu_set *)0x17 < pcVar7)" (binary_expression "(uint)-iVar13" (parenthesized_expression "(uint)" ( identifier )) - identifier) < (call_expression "(uint)((cu_tu_set *)0x17 < pcVar7)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((cu_tu_set *)0x17 < pcVar7)" ( (binary_expression "(cu_tu_set *)0x17 < pcVar7" (cast_expression "(cu_tu_set *)0x17" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < identifier) ))))) )) (compound_statement "{\n      local_b0 = (undefined1  [4])&pdVar12->name;\n      pdVar1 = (dwarf_section *)((int)pcVar7->section_offsets + (int)&pdVar12[-1].num_relocs);\n      ppcVar14 = &pdVar12->compressed_name;\n      if (ppcVar14 < pdVar1) {\n        pcVar6 = (cu_tu_set *)0x4;\n      }\n      else if ((pdVar1 <= pdVar12) ||\n              (pcVar6 = pcVar7,\n              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU))) {\n        local_ac._0_4_ = 0;\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = (cu_tu_set *)&byte_get;\n      local_ac._0_4_ = (*byte_get)((uchar *)pdVar12,(int)pcVar6);\n      if ((uint)(elf_vma)local_ac < 2) {\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }\n      if ((uint)local_b0 < pdVar1) {\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((ppcVar14 < pdVar1) &&\n         ((undefined1 *)((int)pcVar7[-1].section_sizes + 0x1bU) < (undefined1 *)0x8))\n      goto LAB_000323ac;\n      pdVar11 = (dwarf_section *)&pdVar12->filename;\n      local_b8 = (undefined1  [4])0x0;\n      puVar24 = in_stack_ffffff30;\n      if (pdVar11 < pdVar1) goto LAB_000313e1;\nLAB_00031338:\n      puVar24 = in_stack_ffffff30;\n      local_b0 = (undefined1  [4])&pdVar12->start;\n      if ((uint)local_b0 < pdVar1) {\n        local_98._0_4_ = 0;\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98._0_4_ = 0;\n      section_1 = pdVar11;\nLAB_0003134f:\n      if (pdVar12 <= (uint)local_b0) {\n        local_88 = (dwarf_section *)local_b0;\n        local_ac._4_4_ = (dwarf_section *)local_b0;\n        local_bc = (cu_tu_set *)0x0;\n        do {\n          if (do_display != 0) {\n            puVar24 = (undefined1 *)0x3159f;\n            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);\n            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_ac);\n            if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }\n            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_98);\n            pcVar7 = (cu_tu_set *)0x0;\n            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar8,local_bc);\n            section_1 = extraout_ECX_00;\n          }\n          if (pdVar1 < local_ac._4_4_) {\n            pdVar12 = (dwarf_section *)section->name;\n            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if ((elf_vma)local_ac != 1) {\n            if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }\n            uVar4 = (int)local_b8 * 4;\n            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;\n            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(pcVar8,local_b8);\n            return 0;\n          }\n          if (do_display != 0) {\n            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined1  [4])0x0;\n            goto LAB_0003165a;\n          }\n          iVar15 = (int)pdVar1 - (int)local_ac._4_4_;\n          iVar13 = iVar15 + 3;\n          if (-1 < iVar15) {\n            iVar13 = iVar15;\n          }\n          shndx_pool_size = iVar13 >> 2;\n          if (shndx_pool == (uint *)0x0) {\n            shndx_pool_used = 0;\n            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);\nLAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          shndx_pool_size = shndx_pool_size + shndx_pool_used;\n          if (shndx_pool_size < (void *)0x3fffffff) {\n            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);\n            goto LAB_00031d8a;\n          }\n          in_stack_ffffff30 = (undefined1 *)0x323ac;\n          xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1);\n          pdVar12 = (dwarf_section *)0x0;\n          ppcVar14 = extraout_ECX_01;\nLAB_000323ac:\n          psVar16 = pcVar7[-1].section_sizes + 7;\nLAB_0003153d:\n          local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16);\nLAB_000313d0:\n          pdVar11 = (dwarf_section *)&pdVar12->filename;\n          puVar24 = in_stack_ffffff30;\n          if (pdVar11 < pdVar1) {\nLAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }\n          }\n          else {\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }\nLAB_0003148f:\n          pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);\n          pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2);\n          section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7);\n          local_bc = pcVar7;\n          if (((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))\n          goto LAB_000314c9;\n          local_88 = (dwarf_section *)local_b0;\n          local_b0 = (undefined1  [4])pdVar11;\n          local_ac._4_4_ = section_1;\n        } while( true );\n      }\n      local_bc = (cu_tu_set *)0x0;\nLAB_000314c9:\n      pdVar12 = (dwarf_section *)section->name;\n      pcVar8 = (char *)dcngettext(0,"Section %s is too small for %d slot\n",\n                                  "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }" { (expression_statement "local_b0 = (undefined1  [4])&pdVar12->name;" (assignment_expression "local_b0 = (undefined1  [4])&pdVar12->name" identifier = (binary_expression "(undefined1  [4])&pdVar12->name" (parenthesized_expression "(undefined1  [4])" ( (subscript_expression "undefined1  [4]" identifier [ number_literal ]) )) & (field_expression "pdVar12->name" identifier -> field_identifier))) ;) (expression_statement "pdVar1 = (dwarf_section *)((int)pcVar7->section_offsets + (int)&pdVar12[-1].num_relocs);" (assignment_expression "pdVar1 = (dwarf_section *)((int)pcVar7->section_offsets + (int)&pdVar12[-1].num_relocs)" identifier = (cast_expression "(dwarf_section *)((int)pcVar7->section_offsets + (int)&pdVar12[-1].num_relocs)" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar7->section_offsets + (int)&pdVar12[-1].num_relocs)" ( (binary_expression "(int)pcVar7->section_offsets + (int)&pdVar12[-1].num_relocs" (cast_expression "(int)pcVar7->section_offsets" ( (type_descriptor "int" primitive_type) ) (field_expression "pcVar7->section_offsets" identifier -> field_identifier)) + (cast_expression "(int)&pdVar12[-1].num_relocs" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pdVar12[-1].num_relocs" & (field_expression "pdVar12[-1].num_relocs" (subscript_expression "pdVar12[-1]" identifier [ number_literal ]) . field_identifier)))) )))) ;) (expression_statement "ppcVar14 = &pdVar12->compressed_name;" (assignment_expression "ppcVar14 = &pdVar12->compressed_name" identifier = (pointer_expression "&pdVar12->compressed_name" & (field_expression "pdVar12->compressed_name" identifier -> field_identifier))) ;) (if_statement "if (ppcVar14 < pdVar1) {\n        pcVar6 = (cu_tu_set *)0x4;\n      }\n      else if ((pdVar1 <= pdVar12) ||\n              (pcVar6 = pcVar7,\n              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU))) {\n        local_ac._0_4_ = 0;\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }" if (parenthesized_expression "(ppcVar14 < pdVar1)" ( (binary_expression "ppcVar14 < pdVar1" identifier < identifier) )) (compound_statement "{\n        pcVar6 = (cu_tu_set *)0x4;\n      }" { (expression_statement "pcVar6 = (cu_tu_set *)0x4;" (assignment_expression "pcVar6 = (cu_tu_set *)0x4" identifier = (cast_expression "(cu_tu_set *)0x4" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else if ((pdVar1 <= pdVar12) ||\n              (pcVar6 = pcVar7,\n              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU))) {\n        local_ac._0_4_ = 0;\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }" else (if_statement "if ((pdVar1 <= pdVar12) ||\n              (pcVar6 = pcVar7,\n              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU))) {\n        local_ac._0_4_ = 0;\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }" if (parenthesized_expression "((pdVar1 <= pdVar12) ||\n              (pcVar6 = pcVar7,\n              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU)))" ( (binary_expression "(pdVar1 <= pdVar12) ||\n              (pcVar6 = pcVar7,\n              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU))" (parenthesized_expression "(pdVar1 <= pdVar12)" ( (binary_expression "pdVar1 <= pdVar12" identifier <= identifier) )) || (parenthesized_expression "(pcVar6 = pcVar7,\n              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU))" ( (comma_expression "pcVar6 = pcVar7,\n              (undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU)" (assignment_expression "pcVar6 = pcVar7" identifier = identifier) , (binary_expression "(undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU)" (cast_expression "(undefined1 *)0x7" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < (cast_expression "(undefined1 *)((int)pcVar7[-1].section_sizes + 0x1fU)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar7[-1].section_sizes + 0x1fU)" ( (binary_expression "(int)pcVar7[-1].section_sizes + 0x1fU" (cast_expression "(int)pcVar7[-1].section_sizes" ( (type_descriptor "int" primitive_type) ) (field_expression "pcVar7[-1].section_sizes" (subscript_expression "pcVar7[-1]" identifier [ number_literal ]) . field_identifier)) + number_literal) ))))) ))) )) (compound_statement "{\n        local_ac._0_4_ = 0;\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }" { (expression_statement "local_ac._0_4_ = 0;" (assignment_expression "local_ac._0_4_ = 0" (field_expression "local_ac._0_4_" identifier . field_identifier) = number_literal) ;) (expression_statement "local_b8 = (undefined1  [4])0x0;" (assignment_expression "local_b8 = (undefined1  [4])0x0" identifier = (cast_expression "(undefined1  [4])0x0" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) number_literal)) ;) (goto_statement "goto LAB_000313d0;" goto statement_identifier ;) })))) (expression_statement "local_bc = (cu_tu_set *)&byte_get;" (assignment_expression "local_bc = (cu_tu_set *)&byte_get" identifier = (cast_expression "(cu_tu_set *)&byte_get" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&byte_get" & identifier))) ;) (expression_statement "local_ac._0_4_ = (*byte_get)((uchar *)pdVar12,(int)pcVar6);" (assignment_expression "local_ac._0_4_ = (*byte_get)((uchar *)pdVar12,(int)pcVar6)" (field_expression "local_ac._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)((uchar *)pdVar12,(int)pcVar6)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pdVar12,(int)pcVar6)" ( (cast_expression "(uchar *)pdVar12" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(int)pcVar6" ( (type_descriptor "int" primitive_type) ) identifier) )))) ;) (if_statement "if ((uint)(elf_vma)local_ac < 2) {\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }" if (parenthesized_expression "((uint)(elf_vma)local_ac < 2)" ( (binary_expression "(uint)(elf_vma)local_ac < 2" (cast_expression "(uint)(elf_vma)local_ac" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(elf_vma)local_ac" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) < number_literal) )) (compound_statement "{\n        local_b8 = (undefined1  [4])0x0;\n        goto LAB_000313d0;\n      }" { (expression_statement "local_b8 = (undefined1  [4])0x0;" (assignment_expression "local_b8 = (undefined1  [4])0x0" identifier = (cast_expression "(undefined1  [4])0x0" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) number_literal)) ;) (goto_statement "goto LAB_000313d0;" goto statement_identifier ;) })) (if_statement "if ((uint)local_b0 < pdVar1) {\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003153d;\n      }" if (parenthesized_expression "((uint)local_b0 < pdVar1)" ( (binary_expression "(uint)local_b0 < pdVar1" (cast_expression "(uint)local_b0" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) )) (compound_statement "{\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003153d;\n      }" { (expression_statement "psVar16 = (size_t *)0x4;" (assignment_expression "psVar16 = (size_t *)0x4" identifier = (cast_expression "(size_t *)0x4" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_0003153d;" goto statement_identifier ;) })) (if_statement "if ((ppcVar14 < pdVar1) &&\n         ((undefined1 *)((int)pcVar7[-1].section_sizes + 0x1bU) < (undefined1 *)0x8))\n      goto LAB_000323ac;" if (parenthesized_expression "((ppcVar14 < pdVar1) &&\n         ((undefined1 *)((int)pcVar7[-1].section_sizes + 0x1bU) < (undefined1 *)0x8))" ( (binary_expression "(ppcVar14 < pdVar1) &&\n         ((undefined1 *)((int)pcVar7[-1].section_sizes + 0x1bU) < (undefined1 *)0x8)" (parenthesized_expression "(ppcVar14 < pdVar1)" ( (binary_expression "ppcVar14 < pdVar1" identifier < identifier) )) && (parenthesized_expression "((undefined1 *)((int)pcVar7[-1].section_sizes + 0x1bU) < (undefined1 *)0x8)" ( (binary_expression "(undefined1 *)((int)pcVar7[-1].section_sizes + 0x1bU) < (undefined1 *)0x8" (cast_expression "(undefined1 *)((int)pcVar7[-1].section_sizes + 0x1bU)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar7[-1].section_sizes + 0x1bU)" ( (binary_expression "(int)pcVar7[-1].section_sizes + 0x1bU" (cast_expression "(int)pcVar7[-1].section_sizes" ( (type_descriptor "int" primitive_type) ) (field_expression "pcVar7[-1].section_sizes" (subscript_expression "pcVar7[-1]" identifier [ number_literal ]) . field_identifier)) + number_literal) ))) < (cast_expression "(undefined1 *)0x8" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_000323ac;" goto statement_identifier ;)) (expression_statement "pdVar11 = (dwarf_section *)&pdVar12->filename;" (assignment_expression "pdVar11 = (dwarf_section *)&pdVar12->filename" identifier = (cast_expression "(dwarf_section *)&pdVar12->filename" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pdVar12->filename" & (field_expression "pdVar12->filename" identifier -> field_identifier)))) ;) (expression_statement "local_b8 = (undefined1  [4])0x0;" (assignment_expression "local_b8 = (undefined1  [4])0x0" identifier = (cast_expression "(undefined1  [4])0x0" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) number_literal)) ;) (expression_statement "puVar24 = in_stack_ffffff30;" (assignment_expression "puVar24 = in_stack_ffffff30" identifier = identifier) ;) (if_statement "if (pdVar11 < pdVar1) goto LAB_000313e1;" if (parenthesized_expression "(pdVar11 < pdVar1)" ( (binary_expression "pdVar11 < pdVar1" identifier < identifier) )) (goto_statement "goto LAB_000313e1;" goto statement_identifier ;)) (labeled_statement "LAB_00031338:\n      puVar24 = in_stack_ffffff30;" statement_identifier : (expression_statement "puVar24 = in_stack_ffffff30;" (assignment_expression "puVar24 = in_stack_ffffff30" identifier = identifier) ;)) (expression_statement "local_b0 = (undefined1  [4])&pdVar12->start;" (assignment_expression "local_b0 = (undefined1  [4])&pdVar12->start" identifier = (binary_expression "(undefined1  [4])&pdVar12->start" (parenthesized_expression "(undefined1  [4])" ( (subscript_expression "undefined1  [4]" identifier [ number_literal ]) )) & (field_expression "pdVar12->start" identifier -> field_identifier))) ;) (if_statement "if ((uint)local_b0 < pdVar1) {\n        local_98._0_4_ = 0;\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003148f;\n      }" if (parenthesized_expression "((uint)local_b0 < pdVar1)" ( (binary_expression "(uint)local_b0 < pdVar1" (cast_expression "(uint)local_b0" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) )) (compound_statement "{\n        local_98._0_4_ = 0;\n        psVar16 = (size_t *)0x4;\n        goto LAB_0003148f;\n      }" { (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) ;) (expression_statement "psVar16 = (size_t *)0x4;" (assignment_expression "psVar16 = (size_t *)0x4" identifier = (cast_expression "(size_t *)0x4" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_0003148f;" goto 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) ;) (expression_statement "section_1 = pdVar11;" (assignment_expression "section_1 = pdVar11" identifier = identifier) ;) (labeled_statement "LAB_0003134f:\n      if (pdVar12 <= (uint)local_b0) {\n        local_88 = (dwarf_section *)local_b0;\n        local_ac._4_4_ = (dwarf_section *)local_b0;\n        local_bc = (cu_tu_set *)0x0;\n        do {\n          if (do_display != 0) {\n            puVar24 = (undefined1 *)0x3159f;\n            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);\n            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_ac);\n            if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }\n            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_98);\n            pcVar7 = (cu_tu_set *)0x0;\n            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar8,local_bc);\n            section_1 = extraout_ECX_00;\n          }\n          if (pdVar1 < local_ac._4_4_) {\n            pdVar12 = (dwarf_section *)section->name;\n            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if ((elf_vma)local_ac != 1) {\n            if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }\n            uVar4 = (int)local_b8 * 4;\n            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;\n            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(pcVar8,local_b8);\n            return 0;\n          }\n          if (do_display != 0) {\n            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined1  [4])0x0;\n            goto LAB_0003165a;\n          }\n          iVar15 = (int)pdVar1 - (int)local_ac._4_4_;\n          iVar13 = iVar15 + 3;\n          if (-1 < iVar15) {\n            iVar13 = iVar15;\n          }\n          shndx_pool_size = iVar13 >> 2;\n          if (shndx_pool == (uint *)0x0) {\n            shndx_pool_used = 0;\n            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);\nLAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          shndx_pool_size = shndx_pool_size + shndx_pool_used;\n          if (shndx_pool_size < (void *)0x3fffffff) {\n            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);\n            goto LAB_00031d8a;\n          }\n          in_stack_ffffff30 = (undefined1 *)0x323ac;\n          xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1);\n          pdVar12 = (dwarf_section *)0x0;\n          ppcVar14 = extraout_ECX_01;\nLAB_000323ac:\n          psVar16 = pcVar7[-1].section_sizes + 7;\nLAB_0003153d:\n          local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16);\nLAB_000313d0:\n          pdVar11 = (dwarf_section *)&pdVar12->filename;\n          puVar24 = in_stack_ffffff30;\n          if (pdVar11 < pdVar1) {\nLAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }\n          }\n          else {\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }\nLAB_0003148f:\n          pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);\n          pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2);\n          section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7);\n          local_bc = pcVar7;\n          if (((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))\n          goto LAB_000314c9;\n          local_88 = (dwarf_section *)local_b0;\n          local_b0 = (undefined1  [4])pdVar11;\n          local_ac._4_4_ = section_1;\n        } while( true );\n      }" statement_identifier : (if_statement "if (pdVar12 <= (uint)local_b0) {\n        local_88 = (dwarf_section *)local_b0;\n        local_ac._4_4_ = (dwarf_section *)local_b0;\n        local_bc = (cu_tu_set *)0x0;\n        do {\n          if (do_display != 0) {\n            puVar24 = (undefined1 *)0x3159f;\n            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);\n            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_ac);\n            if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }\n            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_98);\n            pcVar7 = (cu_tu_set *)0x0;\n            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar8,local_bc);\n            section_1 = extraout_ECX_00;\n          }\n          if (pdVar1 < local_ac._4_4_) {\n            pdVar12 = (dwarf_section *)section->name;\n            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if ((elf_vma)local_ac != 1) {\n            if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }\n            uVar4 = (int)local_b8 * 4;\n            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;\n            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(pcVar8,local_b8);\n            return 0;\n          }\n          if (do_display != 0) {\n            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined1  [4])0x0;\n            goto LAB_0003165a;\n          }\n          iVar15 = (int)pdVar1 - (int)local_ac._4_4_;\n          iVar13 = iVar15 + 3;\n          if (-1 < iVar15) {\n            iVar13 = iVar15;\n          }\n          shndx_pool_size = iVar13 >> 2;\n          if (shndx_pool == (uint *)0x0) {\n            shndx_pool_used = 0;\n            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);\nLAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          shndx_pool_size = shndx_pool_size + shndx_pool_used;\n          if (shndx_pool_size < (void *)0x3fffffff) {\n            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);\n            goto LAB_00031d8a;\n          }\n          in_stack_ffffff30 = (undefined1 *)0x323ac;\n          xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1);\n          pdVar12 = (dwarf_section *)0x0;\n          ppcVar14 = extraout_ECX_01;\nLAB_000323ac:\n          psVar16 = pcVar7[-1].section_sizes + 7;\nLAB_0003153d:\n          local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16);\nLAB_000313d0:\n          pdVar11 = (dwarf_section *)&pdVar12->filename;\n          puVar24 = in_stack_ffffff30;\n          if (pdVar11 < pdVar1) {\nLAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }\n          }\n          else {\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }\nLAB_0003148f:\n          pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);\n          pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2);\n          section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7);\n          local_bc = pcVar7;\n          if (((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))\n          goto LAB_000314c9;\n          local_88 = (dwarf_section *)local_b0;\n          local_b0 = (undefined1  [4])pdVar11;\n          local_ac._4_4_ = section_1;\n        } while( true );\n      }" if (parenthesized_expression "(pdVar12 <= (uint)local_b0)" ( (binary_expression "pdVar12 <= (uint)local_b0" identifier <= (cast_expression "(uint)local_b0" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (compound_statement "{\n        local_88 = (dwarf_section *)local_b0;\n        local_ac._4_4_ = (dwarf_section *)local_b0;\n        local_bc = (cu_tu_set *)0x0;\n        do {\n          if (do_display != 0) {\n            puVar24 = (undefined1 *)0x3159f;\n            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);\n            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_ac);\n            if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }\n            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_98);\n            pcVar7 = (cu_tu_set *)0x0;\n            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar8,local_bc);\n            section_1 = extraout_ECX_00;\n          }\n          if (pdVar1 < local_ac._4_4_) {\n            pdVar12 = (dwarf_section *)section->name;\n            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if ((elf_vma)local_ac != 1) {\n            if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }\n            uVar4 = (int)local_b8 * 4;\n            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;\n            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(pcVar8,local_b8);\n            return 0;\n          }\n          if (do_display != 0) {\n            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined1  [4])0x0;\n            goto LAB_0003165a;\n          }\n          iVar15 = (int)pdVar1 - (int)local_ac._4_4_;\n          iVar13 = iVar15 + 3;\n          if (-1 < iVar15) {\n            iVar13 = iVar15;\n          }\n          shndx_pool_size = iVar13 >> 2;\n          if (shndx_pool == (uint *)0x0) {\n            shndx_pool_used = 0;\n            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);\nLAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          shndx_pool_size = shndx_pool_size + shndx_pool_used;\n          if (shndx_pool_size < (void *)0x3fffffff) {\n            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);\n            goto LAB_00031d8a;\n          }\n          in_stack_ffffff30 = (undefined1 *)0x323ac;\n          xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1);\n          pdVar12 = (dwarf_section *)0x0;\n          ppcVar14 = extraout_ECX_01;\nLAB_000323ac:\n          psVar16 = pcVar7[-1].section_sizes + 7;\nLAB_0003153d:\n          local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16);\nLAB_000313d0:\n          pdVar11 = (dwarf_section *)&pdVar12->filename;\n          puVar24 = in_stack_ffffff30;\n          if (pdVar11 < pdVar1) {\nLAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }\n          }\n          else {\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }\nLAB_0003148f:\n          pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);\n          pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2);\n          section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7);\n          local_bc = pcVar7;\n          if (((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))\n          goto LAB_000314c9;\n          local_88 = (dwarf_section *)local_b0;\n          local_b0 = (undefined1  [4])pdVar11;\n          local_ac._4_4_ = section_1;\n        } while( true );\n      }" { (expression_statement "local_88 = (dwarf_section *)local_b0;" (assignment_expression "local_88 = (dwarf_section *)local_b0" identifier = (cast_expression "(dwarf_section *)local_b0" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_ac._4_4_ = (dwarf_section *)local_b0;" (assignment_expression "local_ac._4_4_ = (dwarf_section *)local_b0" (field_expression "local_ac._4_4_" identifier . field_identifier) = (cast_expression "(dwarf_section *)local_b0" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_bc = (cu_tu_set *)0x0;" (assignment_expression "local_bc = (cu_tu_set *)0x0" identifier = (cast_expression "(cu_tu_set *)0x0" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n          if (do_display != 0) {\n            puVar24 = (undefined1 *)0x3159f;\n            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);\n            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_ac);\n            if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }\n            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_98);\n            pcVar7 = (cu_tu_set *)0x0;\n            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar8,local_bc);\n            section_1 = extraout_ECX_00;\n          }\n          if (pdVar1 < local_ac._4_4_) {\n            pdVar12 = (dwarf_section *)section->name;\n            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if ((elf_vma)local_ac != 1) {\n            if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }\n            uVar4 = (int)local_b8 * 4;\n            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;\n            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(pcVar8,local_b8);\n            return 0;\n          }\n          if (do_display != 0) {\n            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined1  [4])0x0;\n            goto LAB_0003165a;\n          }\n          iVar15 = (int)pdVar1 - (int)local_ac._4_4_;\n          iVar13 = iVar15 + 3;\n          if (-1 < iVar15) {\n            iVar13 = iVar15;\n          }\n          shndx_pool_size = iVar13 >> 2;\n          if (shndx_pool == (uint *)0x0) {\n            shndx_pool_used = 0;\n            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);\nLAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          shndx_pool_size = shndx_pool_size + shndx_pool_used;\n          if (shndx_pool_size < (void *)0x3fffffff) {\n            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);\n            goto LAB_00031d8a;\n          }\n          in_stack_ffffff30 = (undefined1 *)0x323ac;\n          xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1);\n          pdVar12 = (dwarf_section *)0x0;\n          ppcVar14 = extraout_ECX_01;\nLAB_000323ac:\n          psVar16 = pcVar7[-1].section_sizes + 7;\nLAB_0003153d:\n          local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16);\nLAB_000313d0:\n          pdVar11 = (dwarf_section *)&pdVar12->filename;\n          puVar24 = in_stack_ffffff30;\n          if (pdVar11 < pdVar1) {\nLAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }\n          }\n          else {\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }\nLAB_0003148f:\n          pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);\n          pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2);\n          section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7);\n          local_bc = pcVar7;\n          if (((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))\n          goto LAB_000314c9;\n          local_88 = (dwarf_section *)local_b0;\n          local_b0 = (undefined1  [4])pdVar11;\n          local_ac._4_4_ = section_1;\n        } while( true );" do (compound_statement "{\n          if (do_display != 0) {\n            puVar24 = (undefined1 *)0x3159f;\n            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);\n            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_ac);\n            if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }\n            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_98);\n            pcVar7 = (cu_tu_set *)0x0;\n            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar8,local_bc);\n            section_1 = extraout_ECX_00;\n          }\n          if (pdVar1 < local_ac._4_4_) {\n            pdVar12 = (dwarf_section *)section->name;\n            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if ((elf_vma)local_ac != 1) {\n            if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }\n            uVar4 = (int)local_b8 * 4;\n            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;\n            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(pcVar8,local_b8);\n            return 0;\n          }\n          if (do_display != 0) {\n            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined1  [4])0x0;\n            goto LAB_0003165a;\n          }\n          iVar15 = (int)pdVar1 - (int)local_ac._4_4_;\n          iVar13 = iVar15 + 3;\n          if (-1 < iVar15) {\n            iVar13 = iVar15;\n          }\n          shndx_pool_size = iVar13 >> 2;\n          if (shndx_pool == (uint *)0x0) {\n            shndx_pool_used = 0;\n            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);\nLAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          shndx_pool_size = shndx_pool_size + shndx_pool_used;\n          if (shndx_pool_size < (void *)0x3fffffff) {\n            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);\n            goto LAB_00031d8a;\n          }\n          in_stack_ffffff30 = (undefined1 *)0x323ac;\n          xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1);\n          pdVar12 = (dwarf_section *)0x0;\n          ppcVar14 = extraout_ECX_01;\nLAB_000323ac:\n          psVar16 = pcVar7[-1].section_sizes + 7;\nLAB_0003153d:\n          local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16);\nLAB_000313d0:\n          pdVar11 = (dwarf_section *)&pdVar12->filename;\n          puVar24 = in_stack_ffffff30;\n          if (pdVar11 < pdVar1) {\nLAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }\n          }\n          else {\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }\nLAB_0003148f:\n          pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);\n          pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2);\n          section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7);\n          local_bc = pcVar7;\n          if (((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))\n          goto LAB_000314c9;\n          local_88 = (dwarf_section *)local_b0;\n          local_b0 = (undefined1  [4])pdVar11;\n          local_ac._4_4_ = section_1;\n        }" { (if_statement "if (do_display != 0) {\n            puVar24 = (undefined1 *)0x3159f;\n            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);\n            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_ac);\n            if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }\n            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_98);\n            pcVar7 = (cu_tu_set *)0x0;\n            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar8,local_bc);\n            section_1 = extraout_ECX_00;\n          }" if (parenthesized_expression "(do_display != 0)" ( (binary_expression "do_display != 0" identifier != number_literal) )) (compound_statement "{\n            puVar24 = (undefined1 *)0x3159f;\n            introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);\n            pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_ac);\n            if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }\n            pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar8,(undefined4)(elf_vma)local_98);\n            pcVar7 = (cu_tu_set *)0x0;\n            pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar8,local_bc);\n            section_1 = extraout_ECX_00;\n          }" { (expression_statement "puVar24 = (undefined1 *)0x3159f;" (assignment_expression "puVar24 = (undefined1 *)0x3159f" identifier = (cast_expression "(undefined1 *)0x3159f" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1);" (call_expression "introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1)" identifier (argument_list "((dwarf_section *)section->name,(bfd_boolean)&section->filename,section_1)" ( (cast_expression "(dwarf_section *)section->name" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "section->name" identifier -> field_identifier)) , (binary_expression "(bfd_boolean)&section->filename" (parenthesized_expression "(bfd_boolean)" ( identifier )) & (field_expression "section->filename" identifier -> field_identifier)) , identifier ))) ;) (expression_statement "pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"  Version:                 %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Version:                 %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Version:                 %d\n",5)" identifier (argument_list "(0,"  Version:                 %d\n",5)" ( number_literal , (string_literal ""  Version:                 %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar8,(undefined4)(elf_vma)local_ac);" (call_expression "printf(pcVar8,(undefined4)(elf_vma)local_ac)" identifier (argument_list "(pcVar8,(undefined4)(elf_vma)local_ac)" ( identifier , (cast_expression "(undefined4)(elf_vma)local_ac" ( (type_descriptor "undefined4" type_identifier) ) (cast_expression "(elf_vma)local_ac" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ))) ;) (if_statement "if (1 < (uint)(elf_vma)local_ac) {\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }" if (parenthesized_expression "(1 < (uint)(elf_vma)local_ac)" ( (binary_expression "1 < (uint)(elf_vma)local_ac" number_literal < (cast_expression "(uint)(elf_vma)local_ac" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(elf_vma)local_ac" ( (type_descriptor "elf_vma" type_identifier) ) identifier))) )) (compound_statement "{\n              pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar8,local_b8);\n            }" { (expression_statement "pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"  Number of columns:       %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Number of columns:       %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Number of columns:       %d\n",5)" identifier (argument_list "(0,"  Number of columns:       %d\n",5)" ( number_literal , (string_literal ""  Number of columns:       %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar8,local_b8);" (call_expression "printf(pcVar8,local_b8)" identifier (argument_list "(pcVar8,local_b8)" ( identifier , identifier ))) ;) })) (expression_statement "pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Number of used entries:  %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Number of used entries:  %d\n",5)" identifier (argument_list "(0,"  Number of used entries:  %d\n",5)" ( number_literal , (string_literal ""  Number of used entries:  %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar8,(undefined4)(elf_vma)local_98);" (call_expression "printf(pcVar8,(undefined4)(elf_vma)local_98)" identifier (argument_list "(pcVar8,(undefined4)(elf_vma)local_98)" ( identifier , (cast_expression "(undefined4)(elf_vma)local_98" ( (type_descriptor "undefined4" type_identifier) ) (cast_expression "(elf_vma)local_98" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ))) ;) (expression_statement "pcVar7 = (cu_tu_set *)0x0;" (assignment_expression "pcVar7 = (cu_tu_set *)0x0" identifier = (cast_expression "(cu_tu_set *)0x0" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Number of slots:         %d\n\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Number of slots:         %d\n\n",5)" identifier (argument_list "(0,"  Number of slots:         %d\n\n",5)" ( number_literal , (string_literal ""  Number of slots:         %d\n\n"" " string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar8,local_bc);" (call_expression "printf(pcVar8,local_bc)" identifier (argument_list "(pcVar8,local_bc)" ( identifier , identifier ))) ;) (expression_statement "section_1 = extraout_ECX_00;" (assignment_expression "section_1 = extraout_ECX_00" identifier = identifier) ;) })) (if_statement "if (pdVar1 < local_ac._4_4_) {\n            pdVar12 = (dwarf_section *)section->name;\n            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }" if (parenthesized_expression "(pdVar1 < local_ac._4_4_)" ( (binary_expression "pdVar1 < local_ac._4_4_" identifier < (field_expression "local_ac._4_4_" identifier . field_identifier)) )) (compound_statement "{\n            pdVar12 = (dwarf_section *)section->name;\n            pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }" { (expression_statement "pdVar12 = (dwarf_section *)section->name;" (assignment_expression "pdVar12 = (dwarf_section *)section->name" identifier = (cast_expression "(dwarf_section *)section->name" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "section->name" identifier -> field_identifier))) ;) (expression_statement "pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Section %s too small for %d hash table entries\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Section %s too small for %d hash table entries\n",5)" identifier (argument_list "(0,"Section %s too small for %d hash table entries\n",5)" ( number_literal , (string_literal ""Section %s too small for %d hash table entries\n"" " string_content escape_sequence ") , number_literal ))))) ;) (goto_statement "goto LAB_000314f3;" goto statement_identifier ;) })) (if_statement "if ((elf_vma)local_ac != 1) {\n            if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }\n            uVar4 = (int)local_b8 * 4;\n            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;\n            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(pcVar8,local_b8);\n            return 0;\n          }" if (parenthesized_expression "((elf_vma)local_ac != 1)" ( (binary_expression "(elf_vma)local_ac != 1" (cast_expression "(elf_vma)local_ac" ( (type_descriptor "elf_vma" type_identifier) ) identifier) != number_literal) )) (compound_statement "{\n            if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }\n            uVar4 = (int)local_b8 * 4;\n            ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;\n            if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(pcVar8,local_b8);\n            return 0;\n          }" { (if_statement "if ((elf_vma)local_ac != 2) {\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }" if (parenthesized_expression "((elf_vma)local_ac != 2)" ( (binary_expression "(elf_vma)local_ac != 2" (cast_expression "(elf_vma)local_ac" ( (type_descriptor "elf_vma" type_identifier) ) identifier) != number_literal) )) (compound_statement "{\n              if (do_display == 0) {\n                return 1;\n              }\n              pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar8,(undefined4)(elf_vma)local_ac);\n              goto LAB_000316b0;\n            }" { (if_statement "if (do_display == 0) {\n                return 1;\n              }" if (parenthesized_expression "(do_display == 0)" ( (binary_expression "do_display == 0" identifier == number_literal) )) (compound_statement "{\n                return 1;\n              }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Unsupported version (%d)\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Unsupported version (%d)\n",5)" identifier (argument_list "(0,"  Unsupported version (%d)\n",5)" ( number_literal , (string_literal ""  Unsupported version (%d)\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar8,(undefined4)(elf_vma)local_ac);" (call_expression "printf(pcVar8,(undefined4)(elf_vma)local_ac)" identifier (argument_list "(pcVar8,(undefined4)(elf_vma)local_ac)" ( identifier , (cast_expression "(undefined4)(elf_vma)local_ac" ( (type_descriptor "undefined4" type_identifier) ) (cast_expression "(elf_vma)local_ac" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ))) ;) (goto_statement "goto LAB_000316b0;" goto statement_identifier ;) })) (expression_statement "uVar4 = (int)local_b8 * 4;" (assignment_expression "uVar4 = (int)local_b8 * 4" identifier = (binary_expression "(int)local_b8 * 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8;" (assignment_expression "ppcVar14 = &(local_ac._4_4_)->uncompressed_name + (int)local_b8" identifier = (binary_expression "&(local_ac._4_4_)->uncompressed_name + (int)local_b8" (pointer_expression "&(local_ac._4_4_)->uncompressed_name" & (field_expression "(local_ac._4_4_)->uncompressed_name" (parenthesized_expression "(local_ac._4_4_)" ( (field_expression "local_ac._4_4_" identifier . field_identifier) )) -> field_identifier)) + (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (!CARRY4((uint)local_ac._4_4_,uVar4)) {\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }" if (parenthesized_expression "(!CARRY4((uint)local_ac._4_4_,uVar4))" ( (unary_expression "!CARRY4((uint)local_ac._4_4_,uVar4)" ! (call_expression "CARRY4((uint)local_ac._4_4_,uVar4)" identifier (argument_list "((uint)local_ac._4_4_,uVar4)" ( (cast_expression "(uint)local_ac._4_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_ac._4_4_" identifier . field_identifier)) , identifier )))) )) (compound_statement "{\n              uVar17 = uVar4 + 3;\n              if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }\n              if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }" { (expression_statement "uVar17 = uVar4 + 3;" (assignment_expression "uVar17 = uVar4 + 3" identifier = (binary_expression "uVar4 + 3" identifier + number_literal)) ;) (if_statement "if (-1 < (int)uVar4) {\n                uVar17 = uVar4;\n              }" if (parenthesized_expression "(-1 < (int)uVar4)" ( (binary_expression "-1 < (int)uVar4" number_literal < (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                uVar17 = uVar4;\n              }" { (expression_statement "uVar17 = uVar4;" (assignment_expression "uVar17 = uVar4" identifier = identifier) ;) })) (if_statement "if ((undefined1  [4])((int)uVar17 >> 2) == local_b8) {\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }" if (parenthesized_expression "((undefined1  [4])((int)uVar17 >> 2) == local_b8)" ( (binary_expression "(undefined1  [4])((int)uVar17 >> 2) == local_b8" (call_expression "(undefined1  [4])((int)uVar17 >> 2)" (parenthesized_expression "(undefined1  [4])" ( (subscript_expression "undefined1  [4]" identifier [ number_literal ]) )) (argument_list "((int)uVar17 >> 2)" ( (binary_expression "(int)uVar17 >> 2" (cast_expression "(int)uVar17" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) ))) == identifier) )) (compound_statement "{\n                pdVar12 = (dwarf_section *)section->name;\n                pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);\n                bVar21 = pdVar1 < pdVar11;\n                bVar22 = pdVar1 == pdVar11;\n                if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar8 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }" { (expression_statement "pdVar12 = (dwarf_section *)section->name;" (assignment_expression "pdVar12 = (dwarf_section *)section->name" identifier = (cast_expression "(dwarf_section *)section->name" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "section->name" identifier -> field_identifier))) ;) (expression_statement "pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2);" (assignment_expression "pdVar11 = (dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2)" identifier = (cast_expression "(dwarf_section *)((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2)" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2)" ( (binary_expression "(int)ppcVar14 + uVar4 * (int)(elf_vma)local_98 * 2" (cast_expression "(int)ppcVar14" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar4 * (int)(elf_vma)local_98 * 2" (binary_expression "uVar4 * (int)(elf_vma)local_98" identifier * (cast_expression "(int)(elf_vma)local_98" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)local_98" ( (type_descriptor "elf_vma" type_identifier) ) identifier))) * number_literal)) )))) ;) (expression_statement "bVar21 = pdVar1 < pdVar11;" (assignment_expression "bVar21 = pdVar1 < pdVar11" identifier = (binary_expression "pdVar1 < pdVar11" identifier < identifier)) ;) (expression_statement "bVar22 = pdVar1 == pdVar11;" (assignment_expression "bVar22 = pdVar1 == pdVar11" identifier = (binary_expression "pdVar1 == pdVar11" identifier == identifier)) ;) (if_statement "if (!bVar21) {\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }" if (parenthesized_expression "(!bVar21)" ( (unary_expression "!bVar21" ! identifier) )) (compound_statement "{\n                  iVar13 = 0x10;\n                  pbVar20 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }" { (expression_statement "iVar13 = 0x10;" (assignment_expression "iVar13 = 0x10" identifier = number_literal) ;) (expression_statement "pbVar20 = (byte *)".debug_tu_index";" (assignment_expression "pbVar20 = (byte *)".debug_tu_index"" identifier = (cast_expression "(byte *)".debug_tu_index"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_tu_index"" " string_content "))) ;) (goto_statement "goto code_r0x00031991;" goto statement_identifier ;) })) (expression_statement "pcVar8 = "Section %s too small for offset and size tables\n";" (assignment_expression "pcVar8 = "Section %s too small for offset and size tables\n"" identifier = (string_literal ""Section %s too small for offset and size tables\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0003156a;" goto statement_identifier ;) })) })) (expression_statement "pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"Overlarge number of columns: %x\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Overlarge number of columns: %x\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Overlarge number of columns: %x\n",5)" identifier (argument_list "(0,"Overlarge number of columns: %x\n",5)" ( number_literal , (string_literal ""Overlarge number of columns: %x\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar8,local_b8);" (call_expression "warn(pcVar8,local_b8)" identifier (argument_list "(pcVar8,local_b8)" ( identifier , identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) (if_statement "if (do_display != 0) {\n            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined1  [4])0x0;\n            goto LAB_0003165a;\n          }" if (parenthesized_expression "(do_display != 0)" ( (binary_expression "do_display != 0" identifier != number_literal) )) (compound_statement "{\n            if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined1  [4])0x0;\n            goto LAB_0003165a;\n          }" { (if_statement "if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;" if (parenthesized_expression "(local_bc == (cu_tu_set *)0x0)" ( (binary_expression "local_bc == (cu_tu_set *)0x0" identifier == (cast_expression "(cu_tu_set *)0x0" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000316b0;" goto statement_identifier ;)) (labeled_statement "LAB_00031644:\n            local_b8 = (undefined1  [4])0x0;" statement_identifier : (expression_statement "local_b8 = (undefined1  [4])0x0;" (assignment_expression "local_b8 = (undefined1  [4])0x0" identifier = (cast_expression "(undefined1  [4])0x0" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) number_literal)) ;)) (goto_statement "goto LAB_0003165a;" goto statement_identifier ;) })) (expression_statement "iVar15 = (int)pdVar1 - (int)local_ac._4_4_;" (assignment_expression "iVar15 = (int)pdVar1 - (int)local_ac._4_4_" identifier = (binary_expression "(int)pdVar1 - (int)local_ac._4_4_" (cast_expression "(int)pdVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_ac._4_4_" ( (type_descriptor "int" primitive_type) ) (field_expression "local_ac._4_4_" identifier . field_identifier)))) ;) (expression_statement "iVar13 = iVar15 + 3;" (assignment_expression "iVar13 = iVar15 + 3" identifier = (binary_expression "iVar15 + 3" identifier + number_literal)) ;) (if_statement "if (-1 < iVar15) {\n            iVar13 = iVar15;\n          }" if (parenthesized_expression "(-1 < iVar15)" ( (binary_expression "-1 < iVar15" number_literal < identifier) )) (compound_statement "{\n            iVar13 = iVar15;\n          }" { (expression_statement "iVar13 = iVar15;" (assignment_expression "iVar13 = iVar15" identifier = identifier) ;) })) (expression_statement "shndx_pool_size = iVar13 >> 2;" (assignment_expression "shndx_pool_size = iVar13 >> 2" identifier = (binary_expression "iVar13 >> 2" identifier >> number_literal)) ;) (if_statement "if (shndx_pool == (uint *)0x0) {\n            shndx_pool_used = 0;\n            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);\nLAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }" if (parenthesized_expression "(shndx_pool == (uint *)0x0)" ( (binary_expression "shndx_pool == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            shndx_pool_used = 0;\n            shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);\nLAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }" { (expression_statement "shndx_pool_used = 0;" (assignment_expression "shndx_pool_used = 0" identifier = number_literal) ;) (expression_statement "shndx_pool = (uint *)xcmalloc(shndx_pool_size,4);" (assignment_expression "shndx_pool = (uint *)xcmalloc(shndx_pool_size,4)" identifier = (cast_expression "(uint *)xcmalloc(shndx_pool_size,4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xcmalloc(shndx_pool_size,4)" identifier (argument_list "(shndx_pool_size,4)" ( identifier , number_literal ))))) ;) (labeled_statement "LAB_00031d8a:\n            if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }" statement_identifier : (if_statement "if (local_bc == (cu_tu_set *)0x0) {\n              return 1;\n            }" if (parenthesized_expression "(local_bc == (cu_tu_set *)0x0)" ( (binary_expression "local_bc == (cu_tu_set *)0x0" identifier == (cast_expression "(cu_tu_set *)0x0" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              return 1;\n            }" { (return_statement "return 1;" return number_literal ;) }))) (goto_statement "goto LAB_00031644;" goto statement_identifier ;) })) (expression_statement "shndx_pool_size = shndx_pool_size + shndx_pool_used;" (assignment_expression "shndx_pool_size = shndx_pool_size + shndx_pool_used" identifier = (binary_expression "shndx_pool_size + shndx_pool_used" identifier + identifier)) ;) (if_statement "if (shndx_pool_size < (void *)0x3fffffff) {\n            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);\n            goto LAB_00031d8a;\n          }" if (parenthesized_expression "(shndx_pool_size < (void *)0x3fffffff)" ( (binary_expression "shndx_pool_size < (void *)0x3fffffff" identifier < (cast_expression "(void *)0x3fffffff" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);\n            goto LAB_00031d8a;\n          }" { (expression_statement "shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4);" (assignment_expression "shndx_pool = (uint *)xrealloc(shndx_pool,shndx_pool_size * 4)" identifier = (cast_expression "(uint *)xrealloc(shndx_pool,shndx_pool_size * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xrealloc(shndx_pool,shndx_pool_size * 4)" identifier (argument_list "(shndx_pool,shndx_pool_size * 4)" ( identifier , (binary_expression "shndx_pool_size * 4" identifier * number_literal) ))))) ;) (goto_statement "goto LAB_00031d8a;" goto statement_identifier ;) })) (expression_statement "in_stack_ffffff30 = (undefined1 *)0x323ac;" (assignment_expression "in_stack_ffffff30 = (undefined1 *)0x323ac" identifier = (cast_expression "(undefined1 *)0x323ac" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1);" (call_expression "xcrealloc((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1)" identifier (argument_list "((void *)shndx_pool_size,(size_t)shndx_pool,(size_t)section_1)" ( (cast_expression "(void *)shndx_pool_size" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(size_t)shndx_pool" ( (type_descriptor "size_t" primitive_type) ) identifier) , (cast_expression "(size_t)section_1" ( (type_descriptor "size_t" primitive_type) ) identifier) ))) ;) (expression_statement "pdVar12 = (dwarf_section *)0x0;" (assignment_expression "pdVar12 = (dwarf_section *)0x0" identifier = (cast_expression "(dwarf_section *)0x0" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppcVar14 = extraout_ECX_01;" (assignment_expression "ppcVar14 = extraout_ECX_01" identifier = identifier) ;) (labeled_statement "LAB_000323ac:\n          psVar16 = pcVar7[-1].section_sizes + 7;" statement_identifier : (expression_statement "psVar16 = pcVar7[-1].section_sizes + 7;" (assignment_expression "psVar16 = pcVar7[-1].section_sizes + 7" identifier = (binary_expression "pcVar7[-1].section_sizes + 7" (field_expression "pcVar7[-1].section_sizes" (subscript_expression "pcVar7[-1]" identifier [ number_literal ]) . field_identifier) + number_literal)) ;)) (labeled_statement "LAB_0003153d:\n          local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16);" statement_identifier : (expression_statement "local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16);" (assignment_expression "local_b8 = (undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16)" identifier = (call_expression "(undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)\n                               ((uchar *)ppcVar14,(int)psVar16)" (call_expression "(undefined1  [4])\n                     (**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)" (parenthesized_expression "(undefined1  [4])" ( (subscript_expression "undefined1  [4]" identifier [ number_literal ]) )) (argument_list "(**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature)" ( (pointer_expression "**(_func_elf_vma_uchar_ptr_int **)&local_bc->signature" * (pointer_expression "*(_func_elf_vma_uchar_ptr_int **)&local_bc->signature" * (cast_expression "(_func_elf_vma_uchar_ptr_int **)&local_bc->signature" ( (type_descriptor "_func_elf_vma_uchar_ptr_int **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_bc->signature" & (field_expression "local_bc->signature" identifier -> field_identifier))))) ))) (argument_list "((uchar *)ppcVar14,(int)psVar16)" ( (cast_expression "(uchar *)ppcVar14" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(int)psVar16" ( (type_descriptor "int" primitive_type) ) identifier) )))) ;)) (labeled_statement "LAB_000313d0:\n          pdVar11 = (dwarf_section *)&pdVar12->filename;" statement_identifier : (expression_statement "pdVar11 = (dwarf_section *)&pdVar12->filename;" (assignment_expression "pdVar11 = (dwarf_section *)&pdVar12->filename" identifier = (cast_expression "(dwarf_section *)&pdVar12->filename" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pdVar12->filename" & (field_expression "pdVar12->filename" identifier -> field_identifier)))) ;)) (expression_statement "puVar24 = in_stack_ffffff30;" (assignment_expression "puVar24 = in_stack_ffffff30" identifier = identifier) ;) (if_statement "if (pdVar11 < pdVar1) {\nLAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }\n          }\n          else {\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }" if (parenthesized_expression "(pdVar11 < pdVar1)" ( (binary_expression "pdVar11 < pdVar1" identifier < identifier) )) (compound_statement "{\nLAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }\n          }" { (labeled_statement "LAB_000313e1:\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);" statement_identifier : (expression_statement "local_98._0_4_ = (*byte_get)((uchar *)local_b0,4);" (assignment_expression "local_98._0_4_ = (*byte_get)((uchar *)local_b0,4)" (field_expression "local_98._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)((uchar *)local_b0,4)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)local_b0,4)" ( (cast_expression "(uchar *)local_b0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , number_literal )))) ;)) (expression_statement "local_b0 = (undefined1  [4])&pdVar12->start;" (assignment_expression "local_b0 = (undefined1  [4])&pdVar12->start" identifier = (binary_expression "(undefined1  [4])&pdVar12->start" (parenthesized_expression "(undefined1  [4])" ( (subscript_expression "undefined1  [4]" identifier [ number_literal ]) )) & (field_expression "pdVar12->start" identifier -> field_identifier))) ;) (if_statement "if ((uint)local_b0 < pdVar1) {\n              psVar16 = (size_t *)0x4;\n            }\n            else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }" if (parenthesized_expression "((uint)local_b0 < pdVar1)" ( (binary_expression "(uint)local_b0 < pdVar1" (cast_expression "(uint)local_b0" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) )) (compound_statement "{\n              psVar16 = (size_t *)0x4;\n            }" { (expression_statement "psVar16 = (size_t *)0x4;" (assignment_expression "psVar16 = (size_t *)0x4" identifier = (cast_expression "(size_t *)0x4" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }" else (compound_statement "{\n              section_1 = pdVar11;\n              if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;\n              psVar16 = pcVar7[-1].section_sizes + 5;\n            }" { (expression_statement "section_1 = pdVar11;" (assignment_expression "section_1 = pdVar11" identifier = identifier) ;) (if_statement "if ((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))\n              goto LAB_0003134f;" if (parenthesized_expression "((undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U))" ( (binary_expression "(undefined1 *)0x7 < (undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U)" (cast_expression "(undefined1 *)0x7" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < (cast_expression "(undefined1 *)((int)pcVar7[-1].section_sizes + 0x13U)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar7[-1].section_sizes + 0x13U)" ( (binary_expression "(int)pcVar7[-1].section_sizes + 0x13U" (cast_expression "(int)pcVar7[-1].section_sizes" ( (type_descriptor "int" primitive_type) ) (field_expression "pcVar7[-1].section_sizes" (subscript_expression "pcVar7[-1]" identifier [ number_literal ]) . field_identifier)) + number_literal) )))) )) (goto_statement "goto LAB_0003134f;" goto statement_identifier ;)) (expression_statement "psVar16 = pcVar7[-1].section_sizes + 5;" (assignment_expression "psVar16 = pcVar7[-1].section_sizes + 5" identifier = (binary_expression "pcVar7[-1].section_sizes + 5" (field_expression "pcVar7[-1].section_sizes" (subscript_expression "pcVar7[-1]" identifier [ number_literal ]) . field_identifier) + number_literal)) ;) }))) }) (else_clause "else {\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }" else (compound_statement "{\n            if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;\n            pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);\n            local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);\n            local_b0 = (undefined1  [4])&pdVar12->start;\n            section_1 = extraout_ECX;\n            if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;\n            psVar16 = (size_t *)0x4;\n          }" { (if_statement "if ((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)) goto LAB_00031338;" if (parenthesized_expression "((pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24))" ( (binary_expression "(pdVar1 <= (uint)local_b0) ||\n               (puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)" (parenthesized_expression "(pdVar1 <= (uint)local_b0)" ( (binary_expression "pdVar1 <= (uint)local_b0" identifier <= (cast_expression "(uint)local_b0" ( (type_descriptor "uint" type_identifier) ) identifier)) )) || (parenthesized_expression "(puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24)" ( (comma_expression "puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17),\n               (undefined1 *)0x7 < puVar24" (assignment_expression "puVar24 = (undefined1 *)((int)pcVar7[-1].section_sizes + 0x17)" identifier = (cast_expression "(undefined1 *)((int)pcVar7[-1].section_sizes + 0x17)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar7[-1].section_sizes + 0x17)" ( (binary_expression "(int)pcVar7[-1].section_sizes + 0x17" (cast_expression "(int)pcVar7[-1].section_sizes" ( (type_descriptor "int" primitive_type) ) (field_expression "pcVar7[-1].section_sizes" (subscript_expression "pcVar7[-1]" identifier [ number_literal ]) . field_identifier)) + number_literal) )))) , (binary_expression "(undefined1 *)0x7 < puVar24" (cast_expression "(undefined1 *)0x7" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < identifier)) ))) )) (goto_statement "goto LAB_00031338;" goto statement_identifier ;)) (expression_statement "pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6);" (assignment_expression "pcVar7 = (cu_tu_set *)(pcVar7[-1].section_sizes + 6)" identifier = (cast_expression "(cu_tu_set *)(pcVar7[-1].section_sizes + 6)" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar7[-1].section_sizes + 6)" ( (binary_expression "pcVar7[-1].section_sizes + 6" (field_expression "pcVar7[-1].section_sizes" (subscript_expression "pcVar7[-1]" identifier [ number_literal ]) . field_identifier) + number_literal) )))) ;) (expression_statement "local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7);" (assignment_expression "local_98._0_4_ = (*byte_get)((uchar *)local_b0,(int)pcVar7)" (field_expression "local_98._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)((uchar *)local_b0,(int)pcVar7)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)local_b0,(int)pcVar7)" ( (cast_expression "(uchar *)local_b0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(int)pcVar7" ( (type_descriptor "int" primitive_type) ) identifier) )))) ;) (expression_statement "local_b0 = (undefined1  [4])&pdVar12->start;" (assignment_expression "local_b0 = (undefined1  [4])&pdVar12->start" identifier = (binary_expression "(undefined1  [4])&pdVar12->start" (parenthesized_expression "(undefined1  [4])" ( (subscript_expression "undefined1  [4]" identifier [ number_literal ]) )) & (field_expression "pdVar12->start" identifier -> field_identifier))) ;) (expression_statement "section_1 = extraout_ECX;" (assignment_expression "section_1 = extraout_ECX" identifier = identifier) ;) (if_statement "if (pdVar1 <= (uint)local_b0) goto LAB_0003134f;" if (parenthesized_expression "(pdVar1 <= (uint)local_b0)" ( (binary_expression "pdVar1 <= (uint)local_b0" identifier <= (cast_expression "(uint)local_b0" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_0003134f;" goto statement_identifier ;)) (expression_statement "psVar16 = (size_t *)0x4;" (assignment_expression "psVar16 = (size_t *)0x4" identifier = (cast_expression "(size_t *)0x4" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (labeled_statement "LAB_0003148f:\n          pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);" statement_identifier : (expression_statement "pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16);" (assignment_expression "pcVar7 = (cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16)" identifier = (cast_expression "(cu_tu_set *)(*byte_get)((uchar *)pdVar11,(int)psVar16)" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*byte_get)((uchar *)pdVar11,(int)psVar16)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pdVar11,(int)psVar16)" ( (cast_expression "(uchar *)pdVar11" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(int)psVar16" ( (type_descriptor "int" primitive_type) ) identifier) ))))) ;)) (expression_statement "pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2);" (assignment_expression "pdVar11 = (dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2)" identifier = (cast_expression "(dwarf_section *)((uchar **)local_b0 + (int)pcVar7 * 2)" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uchar **)local_b0 + (int)pcVar7 * 2)" ( (binary_expression "(uchar **)local_b0 + (int)pcVar7 * 2" (cast_expression "(uchar **)local_b0" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) + (binary_expression "(int)pcVar7 * 2" (cast_expression "(int)pcVar7" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) ;) (expression_statement "section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7);" (assignment_expression "section_1 = (dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7)" identifier = (cast_expression "(dwarf_section *)(&pdVar11->uncompressed_name + (int)pcVar7)" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&pdVar11->uncompressed_name + (int)pcVar7)" ( (binary_expression "&pdVar11->uncompressed_name + (int)pcVar7" (pointer_expression "&pdVar11->uncompressed_name" & (field_expression "pdVar11->uncompressed_name" identifier -> field_identifier)) + (cast_expression "(int)pcVar7" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_bc = pcVar7;" (assignment_expression "local_bc = pcVar7" identifier = identifier) ;) (if_statement "if (((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))\n          goto LAB_000314c9;" if (parenthesized_expression "(((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))))" ( (binary_expression "((pdVar11 < (uint)local_b0) || (section_1 < pdVar12)) ||\n             (((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0)))" (parenthesized_expression "((pdVar11 < (uint)local_b0) || (section_1 < pdVar12))" ( (binary_expression "(pdVar11 < (uint)local_b0) || (section_1 < pdVar12)" (parenthesized_expression "(pdVar11 < (uint)local_b0)" ( (binary_expression "pdVar11 < (uint)local_b0" identifier < (cast_expression "(uint)local_b0" ( (type_descriptor "uint" type_identifier) ) identifier)) )) || (parenthesized_expression "(section_1 < pdVar12)" ( (binary_expression "section_1 < pdVar12" identifier < identifier) ))) )) || (parenthesized_expression "(((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0)))" ( (parenthesized_expression "((undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0))" ( (binary_expression "(undefined1  [4])pdVar11 == local_b0 && (pcVar7 != (cu_tu_set *)0x0)" (binary_expression "(undefined1  [4])pdVar11 == local_b0" (cast_expression "(undefined1  [4])pdVar11" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) identifier) == identifier) && (parenthesized_expression "(pcVar7 != (cu_tu_set *)0x0)" ( (binary_expression "pcVar7 != (cu_tu_set *)0x0" identifier != (cast_expression "(cu_tu_set *)0x0" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) ))) )) (goto_statement "goto LAB_000314c9;" goto statement_identifier ;)) (expression_statement "local_88 = (dwarf_section *)local_b0;" (assignment_expression "local_88 = (dwarf_section *)local_b0" identifier = (cast_expression "(dwarf_section *)local_b0" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_b0 = (undefined1  [4])pdVar11;" (assignment_expression "local_b0 = (undefined1  [4])pdVar11" identifier = (cast_expression "(undefined1  [4])pdVar11" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) identifier)) ;) (expression_statement "local_ac._4_4_ = section_1;" (assignment_expression "local_ac._4_4_ = section_1" (field_expression "local_ac._4_4_" identifier . field_identifier) = identifier) ;) }) while (parenthesized_expression "( true )" ( true )) ;) }))) (expression_statement "local_bc = (cu_tu_set *)0x0;" (assignment_expression "local_bc = (cu_tu_set *)0x0" identifier = (cast_expression "(cu_tu_set *)0x0" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_000314c9:\n      pdVar12 = (dwarf_section *)section->name;" statement_identifier : (expression_statement "pdVar12 = (dwarf_section *)section->name;" (assignment_expression "pdVar12 = (dwarf_section *)section->name" identifier = (cast_expression "(dwarf_section *)section->name" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "section->name" identifier -> field_identifier))) ;)) (expression_statement "pcVar8 = (char *)dcngettext(0,"Section %s is too small for %d slot\n",\n                                  "Section %s is too small for %d slots\n",local_bc,5);" (assignment_expression "pcVar8 = (char *)dcngettext(0,"Section %s is too small for %d slot\n",\n                                  "Section %s is too small for %d slots\n",local_bc,5)" identifier = (cast_expression "(char *)dcngettext(0,"Section %s is too small for %d slot\n",\n                                  "Section %s is too small for %d slots\n",local_bc,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"Section %s is too small for %d slot\n",\n                                  "Section %s is too small for %d slots\n",local_bc,5)" identifier (argument_list "(0,"Section %s is too small for %d slot\n",\n                                  "Section %s is too small for %d slots\n",local_bc,5)" ( number_literal , (string_literal ""Section %s is too small for %d slot\n"" " string_content escape_sequence ") , (string_literal ""Section %s is too small for %d slots\n"" " string_content escape_sequence ") , identifier , number_literal ))))) ;) (goto_statement "goto LAB_000314f3;" goto statement_identifier ;) })) (expression_statement "pdVar12 = (dwarf_section *)section->name;" (assignment_expression "pdVar12 = (dwarf_section *)section->name" identifier = (cast_expression "(dwarf_section *)section->name" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "section->name" identifier -> field_identifier))) ;) (expression_statement "pcVar8 = "Section %s is too small to contain a CU/TU header\n";" (assignment_expression "pcVar8 = "Section %s is too small to contain a CU/TU header\n"" identifier = (string_literal ""Section %s is too small to contain a CU/TU header\n"" " string_content escape_sequence ")) ;) }))) (labeled_statement "LAB_0003156a:\n  local_bc = (cu_tu_set *)0x5;" statement_identifier : (expression_statement "local_bc = (cu_tu_set *)0x5;" (assignment_expression "local_bc = (cu_tu_set *)0x5" identifier = (cast_expression "(cu_tu_set *)0x5" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pcVar8 = (char *)dcgettext(0,pcVar8,5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,pcVar8,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar8,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar8,5)" identifier (argument_list "(0,pcVar8,5)" ( number_literal , identifier , number_literal ))))) ;) (labeled_statement "LAB_000314f3:\n  warn(pcVar8,pdVar12,local_bc);" statement_identifier : (expression_statement "warn(pcVar8,pdVar12,local_bc);" (call_expression "warn(pcVar8,pdVar12,local_bc)" identifier (argument_list "(pcVar8,pdVar12,local_bc)" ( identifier , identifier , identifier ))) ;)) (return_statement "return 0;" return number_literal ;) (labeled_statement "LAB_0003165a:\n  if (pdVar1 < &local_88->name) {\n    signature_high._0_4_ = (char *)0x0;\n    signature_high._4_4_ = 0;\n    signature_low._0_4_ = 0;\n    signature_low._4_4_ = 0;\n    goto LAB_0003168c;\n  }" statement_identifier : (if_statement "if (pdVar1 < &local_88->name) {\n    signature_high._0_4_ = (char *)0x0;\n    signature_high._4_4_ = 0;\n    signature_low._0_4_ = 0;\n    signature_low._4_4_ = 0;\n    goto LAB_0003168c;\n  }" if (parenthesized_expression "(pdVar1 < &local_88->name)" ( (binary_expression "pdVar1 < &local_88->name" identifier < (pointer_expression "&local_88->name" & (field_expression "local_88->name" identifier -> field_identifier))) )) (compound_statement "{\n    signature_high._0_4_ = (char *)0x0;\n    signature_high._4_4_ = 0;\n    signature_low._0_4_ = 0;\n    signature_low._4_4_ = 0;\n    goto LAB_0003168c;\n  }" { (expression_statement "signature_high._0_4_ = (char *)0x0;" (assignment_expression "signature_high._0_4_ = (char *)0x0" (field_expression "signature_high._0_4_" identifier . field_identifier) = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "signature_high._4_4_ = 0;" (assignment_expression "signature_high._4_4_ = 0" (field_expression "signature_high._4_4_" identifier . field_identifier) = number_literal) ;) (expression_statement "signature_low._0_4_ = 0;" (assignment_expression "signature_low._0_4_ = 0" (field_expression "signature_low._0_4_" identifier . field_identifier) = number_literal) ;) (expression_statement "signature_low._4_4_ = 0;" (assignment_expression "signature_low._4_4_ = 0" (field_expression "signature_low._4_4_" identifier . field_identifier) = number_literal) ;) (goto_statement "goto LAB_0003168c;" goto statement_identifier ;) }))) (expression_statement "low = &signature_low;" (assignment_expression "low = &signature_low" identifier = (pointer_expression "&signature_low" & identifier)) ;) (expression_statement "byte_get_64((uchar *)local_88,&signature_high,low);" (call_expression "byte_get_64((uchar *)local_88,&signature_high,low)" identifier (argument_list "((uchar *)local_88,&signature_high,low)" ( (cast_expression "(uchar *)local_88" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (pointer_expression "&signature_high" & identifier) , identifier ))) ;) (if_statement "if ((signature_high._4_4_ != 0 || (char *)signature_high != (char *)0x0) ||\n     (signature_low._4_4_ != 0 || (int)signature_low != 0)) {\n    iVar13 = 4;\n    if ((&((dwarf_section *)local_b0)->compressed_name < pdVar1) ||\n       ((pdVar12 = local_ac._4_4_, (uint)local_b0 < pdVar1 &&\n        (iVar13 = (int)pdVar1 - (int)local_b0, iVar13 - 1U < 8)))) {\n      eVar25._0_4_ = (*byte_get)((uchar *)local_b0,iVar13);\n      pdVar12 = (dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25);\n      if ((dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25) <\n          local_ac._4_4_) {\n        pcVar8 = (char *)dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(pcVar8);\n        return 0;\n      }\n    }\n    if (do_display != 0) {\n      low = (elf_vma *)\n            dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),CONCAT44(puVar24,buf),\n                           (char *)signature_high,signature_high._4_4_);\n      pcVar8 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar8,local_b8,low);\n    }\n    if (pdVar12 < pdVar1) {\n      do {\n        ppcVar14 = &pdVar12->compressed_name;\n        if (ppcVar14 < pdVar1) {\n          iVar13 = 4;\n        }\n        else {\n          iVar13 = (int)pdVar1 - (int)pdVar12;\n          if (7 < iVar13 - 1U) goto LAB_000317d8;\n        }\n        eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        if ((elf_vma)eVar25 == 0) goto LAB_000317d8;\n        if (do_display == 0) {\n          if (shndx_pool_used < shndx_pool_size) {\n            peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used);\n            shndx_pool_used = shndx_pool_used + 1;\n                    /* WARNING: Store size is inaccurate */\n            *peVar2 = (elf_vma)eVar25;\n          }\n          else {\n            low = (elf_vma *)0x5;\n            pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(pcVar8);\n          }\n        }\n        else {\n          printf(" %d",(undefined4)(elf_vma)eVar25,low);\n        }\n        pdVar12 = (dwarf_section *)ppcVar14;\n        if (pdVar1 <= ppcVar14) break;\n      } while( true );\n    }\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }" if (parenthesized_expression "((signature_high._4_4_ != 0 || (char *)signature_high != (char *)0x0) ||\n     (signature_low._4_4_ != 0 || (int)signature_low != 0))" ( (binary_expression "(signature_high._4_4_ != 0 || (char *)signature_high != (char *)0x0) ||\n     (signature_low._4_4_ != 0 || (int)signature_low != 0)" (parenthesized_expression "(signature_high._4_4_ != 0 || (char *)signature_high != (char *)0x0)" ( (binary_expression "signature_high._4_4_ != 0 || (char *)signature_high != (char *)0x0" (binary_expression "signature_high._4_4_ != 0" (field_expression "signature_high._4_4_" identifier . field_identifier) != number_literal) || (binary_expression "(char *)signature_high != (char *)0x0" (cast_expression "(char *)signature_high" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) )) || (parenthesized_expression "(signature_low._4_4_ != 0 || (int)signature_low != 0)" ( (binary_expression "signature_low._4_4_ != 0 || (int)signature_low != 0" (binary_expression "signature_low._4_4_ != 0" (field_expression "signature_low._4_4_" identifier . field_identifier) != number_literal) || (binary_expression "(int)signature_low != 0" (cast_expression "(int)signature_low" ( (type_descriptor "int" primitive_type) ) identifier) != number_literal)) ))) )) (compound_statement "{\n    iVar13 = 4;\n    if ((&((dwarf_section *)local_b0)->compressed_name < pdVar1) ||\n       ((pdVar12 = local_ac._4_4_, (uint)local_b0 < pdVar1 &&\n        (iVar13 = (int)pdVar1 - (int)local_b0, iVar13 - 1U < 8)))) {\n      eVar25._0_4_ = (*byte_get)((uchar *)local_b0,iVar13);\n      pdVar12 = (dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25);\n      if ((dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25) <\n          local_ac._4_4_) {\n        pcVar8 = (char *)dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(pcVar8);\n        return 0;\n      }\n    }\n    if (do_display != 0) {\n      low = (elf_vma *)\n            dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),CONCAT44(puVar24,buf),\n                           (char *)signature_high,signature_high._4_4_);\n      pcVar8 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar8,local_b8,low);\n    }\n    if (pdVar12 < pdVar1) {\n      do {\n        ppcVar14 = &pdVar12->compressed_name;\n        if (ppcVar14 < pdVar1) {\n          iVar13 = 4;\n        }\n        else {\n          iVar13 = (int)pdVar1 - (int)pdVar12;\n          if (7 < iVar13 - 1U) goto LAB_000317d8;\n        }\n        eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        if ((elf_vma)eVar25 == 0) goto LAB_000317d8;\n        if (do_display == 0) {\n          if (shndx_pool_used < shndx_pool_size) {\n            peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used);\n            shndx_pool_used = shndx_pool_used + 1;\n                    /* WARNING: Store size is inaccurate */\n            *peVar2 = (elf_vma)eVar25;\n          }\n          else {\n            low = (elf_vma *)0x5;\n            pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(pcVar8);\n          }\n        }\n        else {\n          printf(" %d",(undefined4)(elf_vma)eVar25,low);\n        }\n        pdVar12 = (dwarf_section *)ppcVar14;\n        if (pdVar1 <= ppcVar14) break;\n      } while( true );\n    }\n    pdVar12 = (dwarf_section *)section->name;\n    pcVar8 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }" { (expression_statement "iVar13 = 4;" (assignment_expression "iVar13 = 4" identifier = number_literal) ;) (if_statement "if ((&((dwarf_section *)local_b0)->compressed_name < pdVar1) ||\n       ((pdVar12 = local_ac._4_4_, (uint)local_b0 < pdVar1 &&\n        (iVar13 = (int)pdVar1 - (int)local_b0, iVar13 - 1U < 8)))) {\n      eVar25._0_4_ = (*byte_get)((uchar *)local_b0,iVar13);\n      pdVar12 = (dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25);\n      if ((dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25) <\n          local_ac._4_4_) {\n        pcVar8 = (char *)dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(pcVar8);\n        return 0;\n      }\n    }" if (parenthesized_expression "((&((dwarf_section *)local_b0)->compressed_name < pdVar1) ||\n       ((pdVar12 = local_ac._4_4_, (uint)local_b0 < pdVar1 &&\n        (iVar13 = (int)pdVar1 - (int)local_b0, iVar13 - 1U < 8))))" ( (binary_expression "(&((dwarf_section *)local_b0)->compressed_name < pdVar1) ||\n       ((pdVar12 = local_ac._4_4_, (uint)local_b0 < pdVar1 &&\n        (iVar13 = (int)pdVar1 - (int)local_b0, iVar13 - 1U < 8)))" (parenthesized_expression "(&((dwarf_section *)local_b0)->compressed_name < pdVar1)" ( (binary_expression "&((dwarf_section *)local_b0)->compressed_name < pdVar1" (pointer_expression "&((dwarf_section *)local_b0)->compressed_name" & (field_expression "((dwarf_section *)local_b0)->compressed_name" (parenthesized_expression "((dwarf_section *)local_b0)" ( (cast_expression "(dwarf_section *)local_b0" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier)) < identifier) )) || (parenthesized_expression "((pdVar12 = local_ac._4_4_, (uint)local_b0 < pdVar1 &&\n        (iVar13 = (int)pdVar1 - (int)local_b0, iVar13 - 1U < 8)))" ( (parenthesized_expression "(pdVar12 = local_ac._4_4_, (uint)local_b0 < pdVar1 &&\n        (iVar13 = (int)pdVar1 - (int)local_b0, iVar13 - 1U < 8))" ( (comma_expression "pdVar12 = local_ac._4_4_, (uint)local_b0 < pdVar1 &&\n        (iVar13 = (int)pdVar1 - (int)local_b0, iVar13 - 1U < 8)" (assignment_expression "pdVar12 = local_ac._4_4_" identifier = (field_expression "local_ac._4_4_" identifier . field_identifier)) , (binary_expression "(uint)local_b0 < pdVar1 &&\n        (iVar13 = (int)pdVar1 - (int)local_b0, iVar13 - 1U < 8)" (binary_expression "(uint)local_b0 < pdVar1" (cast_expression "(uint)local_b0" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) && (parenthesized_expression "(iVar13 = (int)pdVar1 - (int)local_b0, iVar13 - 1U < 8)" ( (comma_expression "iVar13 = (int)pdVar1 - (int)local_b0, iVar13 - 1U < 8" (assignment_expression "iVar13 = (int)pdVar1 - (int)local_b0" identifier = (binary_expression "(int)pdVar1 - (int)local_b0" (cast_expression "(int)pdVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar13 - 1U < 8" (binary_expression "iVar13 - 1U" identifier - number_literal) < number_literal)) )))) )) ))) )) (compound_statement "{\n      eVar25._0_4_ = (*byte_get)((uchar *)local_b0,iVar13);\n      pdVar12 = (dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25);\n      if ((dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25) <\n          local_ac._4_4_) {\n        pcVar8 = (char *)dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(pcVar8);\n        return 0;\n      }\n    }" { (expression_statement "eVar25._0_4_ = (*byte_get)((uchar *)local_b0,iVar13);" (assignment_expression "eVar25._0_4_ = (*byte_get)((uchar *)local_b0,iVar13)" (field_expression "eVar25._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)((uchar *)local_b0,iVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)local_b0,iVar13)" ( (cast_expression "(uchar *)local_b0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) (expression_statement "pdVar12 = (dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25);" (assignment_expression "pdVar12 = (dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25)" identifier = (cast_expression "(dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25)" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25)" ( (binary_expression "&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25" (pointer_expression "&(local_ac._4_4_)->uncompressed_name" & (field_expression "(local_ac._4_4_)->uncompressed_name" (parenthesized_expression "(local_ac._4_4_)" ( (field_expression "local_ac._4_4_" identifier . field_identifier) )) -> field_identifier)) + (cast_expression "(int)(elf_vma)eVar25" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier))) )))) ;) (if_statement "if ((dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25) <\n          local_ac._4_4_) {\n        pcVar8 = (char *)dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(pcVar8);\n        return 0;\n      }" if (parenthesized_expression "((dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25) <\n          local_ac._4_4_)" ( (binary_expression "(dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25) <\n          local_ac._4_4_" (cast_expression "(dwarf_section *)(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25)" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25)" ( (binary_expression "&(local_ac._4_4_)->uncompressed_name + (int)(elf_vma)eVar25" (pointer_expression "&(local_ac._4_4_)->uncompressed_name" & (field_expression "(local_ac._4_4_)->uncompressed_name" (parenthesized_expression "(local_ac._4_4_)" ( (field_expression "local_ac._4_4_" identifier . field_identifier) )) -> field_identifier)) + (cast_expression "(int)(elf_vma)eVar25" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier))) ))) < (field_expression "local_ac._4_4_" identifier . field_identifier)) )) (compound_statement "{\n        pcVar8 = (char *)dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(pcVar8);\n        return 0;\n      }" { (expression_statement "pcVar8 = (char *)dcgettext(0,"Section index pool located before start of section\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"Section index pool located before start of section\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Section index pool located before start of section\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Section index pool located before start of section\n",5)" identifier (argument_list "(0,"Section index pool located before start of section\n",5)" ( number_literal , (string_literal ""Section index pool located before start of section\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar8);" (call_expression "warn(pcVar8)" identifier (argument_list "(pcVar8)" ( identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) })) (if_statement "if (do_display != 0) {\n      low = (elf_vma *)\n            dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),CONCAT44(puVar24,buf),\n                           (char *)signature_high,signature_high._4_4_);\n      pcVar8 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar8,local_b8,low);\n    }" if (parenthesized_expression "(do_display != 0)" ( (binary_expression "do_display != 0" identifier != number_literal) )) (compound_statement "{\n      low = (elf_vma *)\n            dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),CONCAT44(puVar24,buf),\n                           (char *)signature_high,signature_high._4_4_);\n      pcVar8 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar8,local_b8,low);\n    }" { (expression_statement "low = (elf_vma *)\n            dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),CONCAT44(puVar24,buf),\n                           (char *)signature_high,signature_high._4_4_);" (assignment_expression "low = (elf_vma *)\n            dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),CONCAT44(puVar24,buf),\n                           (char *)signature_high,signature_high._4_4_)" identifier = (cast_expression "(elf_vma *)\n            dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),CONCAT44(puVar24,buf),\n                           (char *)signature_high,signature_high._4_4_)" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),CONCAT44(puVar24,buf),\n                           (char *)signature_high,signature_high._4_4_)" identifier (argument_list "(CONCAT44(signature_low._4_4_,(int)signature_low),CONCAT44(puVar24,buf),\n                           (char *)signature_high,signature_high._4_4_)" ( (call_expression "CONCAT44(signature_low._4_4_,(int)signature_low)" identifier (argument_list "(signature_low._4_4_,(int)signature_low)" ( (field_expression "signature_low._4_4_" identifier . field_identifier) , (cast_expression "(int)signature_low" ( (type_descriptor "int" primitive_type) ) identifier) ))) , (call_expression "CONCAT44(puVar24,buf)" identifier (argument_list "(puVar24,buf)" ( identifier , identifier ))) , (cast_expression "(char *)signature_high" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (field_expression "signature_high._4_4_" identifier . field_identifier) ))))) ;) (expression_statement "pcVar8 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5)" identifier (argument_list "(0,"  [%3d] Signature:  0x%s  Sections: ",5)" ( number_literal , (string_literal ""  [%3d] Signature:  0x%s  Sections: "" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar8,local_b8,low);" (call_expression "printf(pcVar8,local_b8,low)" identifier (argument_list "(pcVar8,local_b8,low)" ( identifier , identifier , identifier ))) ;) })) (if_statement "if (pdVar12 < pdVar1) {\n      do {\n        ppcVar14 = &pdVar12->compressed_name;\n        if (ppcVar14 < pdVar1) {\n          iVar13 = 4;\n        }\n        else {\n          iVar13 = (int)pdVar1 - (int)pdVar12;\n          if (7 < iVar13 - 1U) goto LAB_000317d8;\n        }\n        eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        if ((elf_vma)eVar25 == 0) goto LAB_000317d8;\n        if (do_display == 0) {\n          if (shndx_pool_used < shndx_pool_size) {\n            peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used);\n            shndx_pool_used = shndx_pool_used + 1;\n                    /* WARNING: Store size is inaccurate */\n            *peVar2 = (elf_vma)eVar25;\n          }\n          else {\n            low = (elf_vma *)0x5;\n            pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(pcVar8);\n          }\n        }\n        else {\n          printf(" %d",(undefined4)(elf_vma)eVar25,low);\n        }\n        pdVar12 = (dwarf_section *)ppcVar14;\n        if (pdVar1 <= ppcVar14) break;\n      } while( true );\n    }" if (parenthesized_expression "(pdVar12 < pdVar1)" ( (binary_expression "pdVar12 < pdVar1" identifier < identifier) )) (compound_statement "{\n      do {\n        ppcVar14 = &pdVar12->compressed_name;\n        if (ppcVar14 < pdVar1) {\n          iVar13 = 4;\n        }\n        else {\n          iVar13 = (int)pdVar1 - (int)pdVar12;\n          if (7 < iVar13 - 1U) goto LAB_000317d8;\n        }\n        eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        if ((elf_vma)eVar25 == 0) goto LAB_000317d8;\n        if (do_display == 0) {\n          if (shndx_pool_used < shndx_pool_size) {\n            peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used);\n            shndx_pool_used = shndx_pool_used + 1;\n                    /* WARNING: Store size is inaccurate */\n            *peVar2 = (elf_vma)eVar25;\n          }\n          else {\n            low = (elf_vma *)0x5;\n            pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(pcVar8);\n          }\n        }\n        else {\n          printf(" %d",(undefined4)(elf_vma)eVar25,low);\n        }\n        pdVar12 = (dwarf_section *)ppcVar14;\n        if (pdVar1 <= ppcVar14) break;\n      } while( true );\n    }" { (do_statement "do {\n        ppcVar14 = &pdVar12->compressed_name;\n        if (ppcVar14 < pdVar1) {\n          iVar13 = 4;\n        }\n        else {\n          iVar13 = (int)pdVar1 - (int)pdVar12;\n          if (7 < iVar13 - 1U) goto LAB_000317d8;\n        }\n        eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        if ((elf_vma)eVar25 == 0) goto LAB_000317d8;\n        if (do_display == 0) {\n          if (shndx_pool_used < shndx_pool_size) {\n            peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used);\n            shndx_pool_used = shndx_pool_used + 1;\n                    /* WARNING: Store size is inaccurate */\n            *peVar2 = (elf_vma)eVar25;\n          }\n          else {\n            low = (elf_vma *)0x5;\n            pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(pcVar8);\n          }\n        }\n        else {\n          printf(" %d",(undefined4)(elf_vma)eVar25,low);\n        }\n        pdVar12 = (dwarf_section *)ppcVar14;\n        if (pdVar1 <= ppcVar14) break;\n      } while( true );" do (compound_statement "{\n        ppcVar14 = &pdVar12->compressed_name;\n        if (ppcVar14 < pdVar1) {\n          iVar13 = 4;\n        }\n        else {\n          iVar13 = (int)pdVar1 - (int)pdVar12;\n          if (7 < iVar13 - 1U) goto LAB_000317d8;\n        }\n        eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        if ((elf_vma)eVar25 == 0) goto LAB_000317d8;\n        if (do_display == 0) {\n          if (shndx_pool_used < shndx_pool_size) {\n            peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used);\n            shndx_pool_used = shndx_pool_used + 1;\n                    /* WARNING: Store size is inaccurate */\n            *peVar2 = (elf_vma)eVar25;\n          }\n          else {\n            low = (elf_vma *)0x5;\n            pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(pcVar8);\n          }\n        }\n        else {\n          printf(" %d",(undefined4)(elf_vma)eVar25,low);\n        }\n        pdVar12 = (dwarf_section *)ppcVar14;\n        if (pdVar1 <= ppcVar14) break;\n      }" { (expression_statement "ppcVar14 = &pdVar12->compressed_name;" (assignment_expression "ppcVar14 = &pdVar12->compressed_name" identifier = (pointer_expression "&pdVar12->compressed_name" & (field_expression "pdVar12->compressed_name" identifier -> field_identifier))) ;) (if_statement "if (ppcVar14 < pdVar1) {\n          iVar13 = 4;\n        }\n        else {\n          iVar13 = (int)pdVar1 - (int)pdVar12;\n          if (7 < iVar13 - 1U) goto LAB_000317d8;\n        }" if (parenthesized_expression "(ppcVar14 < pdVar1)" ( (binary_expression "ppcVar14 < pdVar1" identifier < identifier) )) (compound_statement "{\n          iVar13 = 4;\n        }" { (expression_statement "iVar13 = 4;" (assignment_expression "iVar13 = 4" identifier = number_literal) ;) }) (else_clause "else {\n          iVar13 = (int)pdVar1 - (int)pdVar12;\n          if (7 < iVar13 - 1U) goto LAB_000317d8;\n        }" else (compound_statement "{\n          iVar13 = (int)pdVar1 - (int)pdVar12;\n          if (7 < iVar13 - 1U) goto LAB_000317d8;\n        }" { (expression_statement "iVar13 = (int)pdVar1 - (int)pdVar12;" (assignment_expression "iVar13 = (int)pdVar1 - (int)pdVar12" identifier = (binary_expression "(int)pdVar1 - (int)pdVar12" (cast_expression "(int)pdVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pdVar12" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (7 < iVar13 - 1U) goto LAB_000317d8;" if (parenthesized_expression "(7 < iVar13 - 1U)" ( (binary_expression "7 < iVar13 - 1U" number_literal < (binary_expression "iVar13 - 1U" identifier - number_literal)) )) (goto_statement "goto LAB_000317d8;" goto statement_identifier ;)) }))) (expression_statement "eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);" (assignment_expression "eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13)" (field_expression "eVar25._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)((uchar *)pdVar12,iVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pdVar12,iVar13)" ( (cast_expression "(uchar *)pdVar12" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) (if_statement "if ((elf_vma)eVar25 == 0) goto LAB_000317d8;" if (parenthesized_expression "((elf_vma)eVar25 == 0)" ( (binary_expression "(elf_vma)eVar25 == 0" (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier) == number_literal) )) (goto_statement "goto LAB_000317d8;" goto statement_identifier ;)) (if_statement "if (do_display == 0) {\n          if (shndx_pool_used < shndx_pool_size) {\n            peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used);\n            shndx_pool_used = shndx_pool_used + 1;\n                    /* WARNING: Store size is inaccurate */\n            *peVar2 = (elf_vma)eVar25;\n          }\n          else {\n            low = (elf_vma *)0x5;\n            pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(pcVar8);\n          }\n        }\n        else {\n          printf(" %d",(undefined4)(elf_vma)eVar25,low);\n        }" if (parenthesized_expression "(do_display == 0)" ( (binary_expression "do_display == 0" identifier == number_literal) )) (compound_statement "{\n          if (shndx_pool_used < shndx_pool_size) {\n            peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used);\n            shndx_pool_used = shndx_pool_used + 1;\n                    /* WARNING: Store size is inaccurate */\n            *peVar2 = (elf_vma)eVar25;\n          }\n          else {\n            low = (elf_vma *)0x5;\n            pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(pcVar8);\n          }\n        }" { (if_statement "if (shndx_pool_used < shndx_pool_size) {\n            peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used);\n            shndx_pool_used = shndx_pool_used + 1;\n                    /* WARNING: Store size is inaccurate */\n            *peVar2 = (elf_vma)eVar25;\n          }\n          else {\n            low = (elf_vma *)0x5;\n            pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(pcVar8);\n          }" if (parenthesized_expression "(shndx_pool_used < shndx_pool_size)" ( (binary_expression "shndx_pool_used < shndx_pool_size" identifier < identifier) )) (compound_statement "{\n            peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used);\n            shndx_pool_used = shndx_pool_used + 1;\n                    /* WARNING: Store size is inaccurate */\n            *peVar2 = (elf_vma)eVar25;\n          }" { (expression_statement "peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used);" (assignment_expression "peVar2 = (elf_vma *)(shndx_pool + shndx_pool_used)" identifier = (cast_expression "(elf_vma *)(shndx_pool + shndx_pool_used)" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(shndx_pool + shndx_pool_used)" ( (binary_expression "shndx_pool + shndx_pool_used" identifier + identifier) )))) ;) (expression_statement "shndx_pool_used = shndx_pool_used + 1;" (assignment_expression "shndx_pool_used = shndx_pool_used + 1" identifier = (binary_expression "shndx_pool_used + 1" identifier + number_literal)) ;) comment (expression_statement "*peVar2 = (elf_vma)eVar25;" (assignment_expression "*peVar2 = (elf_vma)eVar25" (pointer_expression "*peVar2" * identifier) = (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) }) (else_clause "else {\n            low = (elf_vma *)0x5;\n            pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(pcVar8);\n          }" else (compound_statement "{\n            low = (elf_vma *)0x5;\n            pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(pcVar8);\n          }" { (expression_statement "low = (elf_vma *)0x5;" (assignment_expression "low = (elf_vma *)0x5" identifier = (cast_expression "(elf_vma *)0x5" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n");" (assignment_expression "pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n")" identifier = (cast_expression "(char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Internal error: out of space in the shndx pool.\n")" identifier (argument_list "(0,"Internal error: out of space in the shndx pool.\n")" ( number_literal , (string_literal ""Internal error: out of space in the shndx pool.\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "error(pcVar8);" (call_expression "error(pcVar8)" identifier (argument_list "(pcVar8)" ( identifier ))) ;) }))) }) (else_clause "else {\n          printf(" %d",(undefined4)(elf_vma)eVar25,low);\n        }" else (compound_statement "{\n          printf(" %d",(undefined4)(elf_vma)eVar25,low);\n        }" { (expression_statement "printf(" %d",(undefined4)(elf_vma)eVar25,low);" (call_expression "printf(" %d",(undefined4)(elf_vma)eVar25,low)" identifier (argument_list "(" %d",(undefined4)(elf_vma)eVar25,low)" ( (string_literal "" %d"" " string_content ") , (cast_expression "(undefined4)(elf_vma)eVar25" ( (type_descriptor "undefined4" type_identifier) ) (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) , identifier ))) ;) }))) (expression_statement "pdVar12 = (dwarf_section *)ppcVar14;" (assignment_expression "pdVar12 = (dwarf_section *)ppcVar14" identifier = (cast_expression "(dwarf_section *)ppcVar14" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (pdVar1 <= ppcVar14) break;" if (parenthesized_expression "(pdVar1 <= ppcVar14)" ( (binary_expression "pdVar1 <= ppcVar14" identifier <= identifier) )) (break_statement "break;" break ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "pdVar12 = (dwarf_section *)section->name;" (assignment_expression "pdVar12 = (dwarf_section *)section->name" identifier = (cast_expression "(dwarf_section *)section->name" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "section->name" identifier -> field_identifier))) ;) (expression_statement "pcVar8 = "Section %s too small for shndx pool\n";" (assignment_expression "pcVar8 = "Section %s too small for shndx pool\n"" identifier = (string_literal ""Section %s too small for shndx pool\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0003156a;" goto statement_identifier ;) })) (labeled_statement "LAB_0003168c:\n  local_b8 = (undefined1  [4])((int)(uint64_t *)local_b8 + 1);" statement_identifier : (expression_statement "local_b8 = (undefined1  [4])((int)(uint64_t *)local_b8 + 1);" (assignment_expression "local_b8 = (undefined1  [4])((int)(uint64_t *)local_b8 + 1)" identifier = (call_expression "(undefined1  [4])((int)(uint64_t *)local_b8 + 1)" (parenthesized_expression "(undefined1  [4])" ( (subscript_expression "undefined1  [4]" identifier [ number_literal ]) )) (argument_list "((int)(uint64_t *)local_b8 + 1)" ( (binary_expression "(int)(uint64_t *)local_b8 + 1" (cast_expression "(int)(uint64_t *)local_b8" ( (type_descriptor "int" primitive_type) ) (cast_expression "(uint64_t *)local_b8" ( (type_descriptor "uint64_t *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) ;)) (expression_statement "local_88 = (dwarf_section *)&local_88->name;" (assignment_expression "local_88 = (dwarf_section *)&local_88->name" identifier = (cast_expression "(dwarf_section *)&local_88->name" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_88->name" & (field_expression "local_88->name" identifier -> field_identifier)))) ;) (expression_statement "local_b0 = (undefined1  [4])&((dwarf_section *)local_b0)->compressed_name;" (assignment_expression "local_b0 = (undefined1  [4])&((dwarf_section *)local_b0)->compressed_name" identifier = (binary_expression "(undefined1  [4])&((dwarf_section *)local_b0)->compressed_name" (parenthesized_expression "(undefined1  [4])" ( (subscript_expression "undefined1  [4]" identifier [ number_literal ]) )) & (field_expression "((dwarf_section *)local_b0)->compressed_name" (parenthesized_expression "((dwarf_section *)local_b0)" ( (cast_expression "(dwarf_section *)local_b0" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier))) ;) (if_statement "if (local_bc <= (uint)local_b8) goto LAB_000316a3;" if (parenthesized_expression "(local_bc <= (uint)local_b8)" ( (binary_expression "local_bc <= (uint)local_b8" identifier <= (cast_expression "(uint)local_b8" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_000316a3;" goto statement_identifier ;)) (goto_statement "goto LAB_0003165a;" goto statement_identifier ;) (labeled_statement "LAB_000317d8:\n  if (do_display == 0) {\n    if (shndx_pool_used < shndx_pool_size) {\n      puVar3 = shndx_pool + shndx_pool_used;\n      shndx_pool_used = shndx_pool_used + 1;\n      *puVar3 = 0;\n    }\n    else {\n      pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(pcVar8);\n    }\n  }\n  else {\n    putchar(10);\n  }" statement_identifier : (if_statement "if (do_display == 0) {\n    if (shndx_pool_used < shndx_pool_size) {\n      puVar3 = shndx_pool + shndx_pool_used;\n      shndx_pool_used = shndx_pool_used + 1;\n      *puVar3 = 0;\n    }\n    else {\n      pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(pcVar8);\n    }\n  }\n  else {\n    putchar(10);\n  }" if (parenthesized_expression "(do_display == 0)" ( (binary_expression "do_display == 0" identifier == number_literal) )) (compound_statement "{\n    if (shndx_pool_used < shndx_pool_size) {\n      puVar3 = shndx_pool + shndx_pool_used;\n      shndx_pool_used = shndx_pool_used + 1;\n      *puVar3 = 0;\n    }\n    else {\n      pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(pcVar8);\n    }\n  }" { (if_statement "if (shndx_pool_used < shndx_pool_size) {\n      puVar3 = shndx_pool + shndx_pool_used;\n      shndx_pool_used = shndx_pool_used + 1;\n      *puVar3 = 0;\n    }\n    else {\n      pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(pcVar8);\n    }" if (parenthesized_expression "(shndx_pool_used < shndx_pool_size)" ( (binary_expression "shndx_pool_used < shndx_pool_size" identifier < identifier) )) (compound_statement "{\n      puVar3 = shndx_pool + shndx_pool_used;\n      shndx_pool_used = shndx_pool_used + 1;\n      *puVar3 = 0;\n    }" { (expression_statement "puVar3 = shndx_pool + shndx_pool_used;" (assignment_expression "puVar3 = shndx_pool + shndx_pool_used" identifier = (binary_expression "shndx_pool + shndx_pool_used" identifier + identifier)) ;) (expression_statement "shndx_pool_used = shndx_pool_used + 1;" (assignment_expression "shndx_pool_used = shndx_pool_used + 1" identifier = (binary_expression "shndx_pool_used + 1" identifier + number_literal)) ;) (expression_statement "*puVar3 = 0;" (assignment_expression "*puVar3 = 0" (pointer_expression "*puVar3" * identifier) = number_literal) ;) }) (else_clause "else {\n      pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(pcVar8);\n    }" else (compound_statement "{\n      pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(pcVar8);\n    }" { (expression_statement "pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Internal error: out of space in the shndx pool.\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Internal error: out of space in the shndx pool.\n",5)" identifier (argument_list "(0,"Internal error: out of space in the shndx pool.\n",5)" ( number_literal , (string_literal ""Internal error: out of space in the shndx pool.\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "error(pcVar8);" (call_expression "error(pcVar8)" identifier (argument_list "(pcVar8)" ( identifier ))) ;) }))) }) (else_clause "else {\n    putchar(10);\n  }" else (compound_statement "{\n    putchar(10);\n  }" { (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) })))) (goto_statement "goto LAB_0003168c;" goto statement_identifier ;) (while_statement "while( true ) {\n    iVar13 = iVar13 + -1;\n    bVar21 = *(byte *)&pdVar12->uncompressed_name < *pbVar20;\n    bVar22 = *(byte *)&pdVar12->uncompressed_name == *pbVar20;\n    pdVar12 = (dwarf_section *)((int)pdVar12 + (uint)bVar23 * -2 + 1);\n    pbVar20 = pbVar20 + (uint)bVar23 * -2 + 1;\n    if (!bVar22) break;\ncode_r0x00031991:\n    if (iVar13 == 0) break;\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    iVar13 = iVar13 + -1;\n    bVar21 = *(byte *)&pdVar12->uncompressed_name < *pbVar20;\n    bVar22 = *(byte *)&pdVar12->uncompressed_name == *pbVar20;\n    pdVar12 = (dwarf_section *)((int)pdVar12 + (uint)bVar23 * -2 + 1);\n    pbVar20 = pbVar20 + (uint)bVar23 * -2 + 1;\n    if (!bVar22) break;\ncode_r0x00031991:\n    if (iVar13 == 0) break;\n  }" { (expression_statement "iVar13 = iVar13 + -1;" (assignment_expression "iVar13 = iVar13 + -1" identifier = (binary_expression "iVar13 + -1" identifier + number_literal)) ;) (expression_statement "bVar21 = *(byte *)&pdVar12->uncompressed_name < *pbVar20;" (assignment_expression "bVar21 = *(byte *)&pdVar12->uncompressed_name < *pbVar20" identifier = (binary_expression "*(byte *)&pdVar12->uncompressed_name < *pbVar20" (pointer_expression "*(byte *)&pdVar12->uncompressed_name" * (cast_expression "(byte *)&pdVar12->uncompressed_name" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pdVar12->uncompressed_name" & (field_expression "pdVar12->uncompressed_name" identifier -> field_identifier)))) < (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "bVar22 = *(byte *)&pdVar12->uncompressed_name == *pbVar20;" (assignment_expression "bVar22 = *(byte *)&pdVar12->uncompressed_name == *pbVar20" identifier = (binary_expression "*(byte *)&pdVar12->uncompressed_name == *pbVar20" (pointer_expression "*(byte *)&pdVar12->uncompressed_name" * (cast_expression "(byte *)&pdVar12->uncompressed_name" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pdVar12->uncompressed_name" & (field_expression "pdVar12->uncompressed_name" identifier -> field_identifier)))) == (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "pdVar12 = (dwarf_section *)((int)pdVar12 + (uint)bVar23 * -2 + 1);" (assignment_expression "pdVar12 = (dwarf_section *)((int)pdVar12 + (uint)bVar23 * -2 + 1)" identifier = (cast_expression "(dwarf_section *)((int)pdVar12 + (uint)bVar23 * -2 + 1)" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pdVar12 + (uint)bVar23 * -2 + 1)" ( (binary_expression "(int)pdVar12 + (uint)bVar23 * -2 + 1" (binary_expression "(int)pdVar12 + (uint)bVar23 * -2" (cast_expression "(int)pdVar12" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar23 * -2" (cast_expression "(uint)bVar23" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar23 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar23 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar23 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar23 * -2" identifier + (binary_expression "(uint)bVar23 * -2" (cast_expression "(uint)bVar23" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (if_statement "if (!bVar22) break;" if (parenthesized_expression "(!bVar22)" ( (unary_expression "!bVar22" ! identifier) )) (break_statement "break;" break ;)) (labeled_statement "code_r0x00031991:\n    if (iVar13 == 0) break;" statement_identifier : (if_statement "if (iVar13 == 0) break;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (break_statement "break;" break ;))) })) (expression_statement "bVar22 = !bVar21 && !bVar22;" (assignment_expression "bVar22 = !bVar21 && !bVar22" identifier = (binary_expression "!bVar21 && !bVar22" (unary_expression "!bVar21" ! identifier) && (unary_expression "!bVar22" ! identifier))) ;) (if_statement "if (do_display == 0) {\n    if (bVar22 == bVar21) {\n      tu_count = (int)(elf_vma)local_98;\n      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);\n      tu_sets = local_78;\n    }\n    else {\n      cu_count = (int)(elf_vma)local_98;\n      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);\n      cu_sets = local_78;\n    }\n    if (local_bc != (cu_tu_set *)0x0) {\nLAB_000319e5:\n      local_a4 = (cu_tu_set *)0x0;\n      pdVar12 = local_88;\n      auVar18 = local_b0;\n      do {\n        ppcVar19 = &pdVar12->name;\n        if (pdVar1 < ppcVar19) {\n          signature_high._0_4_ = (char *)0x0;\n          signature_high._4_4_ = 0;\n          signature_low._0_4_ = 0;\n          signature_low._4_4_ = 0;\n        }\n        else {\n          byte_get_64((uchar *)pdVar12,&signature_high,&signature_low);\n        }\n        if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031a7a:\n          eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n          if ((elf_vma)eVar25 != 0) {\n            if ((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25) {\n              pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);\n              local_b8 = (undefined1  [4])(elf_vma)local_98;\n              goto LAB_00031dd2;\n            }\n            if (do_display == 0) {\n              if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;\n              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\n              *(char **)&local_8c->signature = pdVar12->uncompressed_name;\n              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;\n              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (cu_tu_set *)((int)&local_a4->signature + 1);\n        pdVar12 = (dwarf_section *)ppcVar19;\n        auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;\n      } while (local_a4 < local_bc);\n      if (do_display != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031e1e:\n      eVar25._0_4_ = 0;\n      pdVar12 = local_ac._4_4_;\n      do {\n        eVar25._0_4_ = (elf_vma)((int)(elf_vma)eVar25 + 1);\n        if (&pdVar12->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031e67:\n          local_b4 = (undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          local_b4 = (undefined1  [4])0x0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_00031e67;\n        }\n        if (do_display != 0) {\n          puVar24 = (undefined1 *)0x31e89;\n          pcVar8 = get_DW_SECT_short_name((uint)local_b4);\n          printf(" %8s",pcVar8);\n        }\n        pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n      } while ((uint)(elf_vma)eVar25 < (uint)local_b8);\n      if (do_display != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (cu_tu_set *)0x0) {\n      return 1;\n    }\n  }\n  else {\n    pcVar8 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar8);\n    if (bVar22 == bVar21) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pdVar12 = local_ac._4_4_;\n    if (local_b8 != (undefined1  [4])0x0) {\n      do {\n        ppcVar19 = &pdVar12->compressed_name;\n        if (ppcVar19 < pdVar1) {\n          iVar13 = 4;\nLAB_000321db:\n          eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          eVar25._0_4_ = 0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_000321db;\n        }\n        puVar24 = (undefined1 *)0x321b7;\n        pcVar8 = get_DW_SECT_short_name((uint)(elf_vma)eVar25);\n        printf(" %8s",pcVar8);\n        pdVar12 = (dwarf_section *)ppcVar19;\n      } while (ppcVar14 != ppcVar19);\n    }\n    putchar(10);\n    local_78 = (cu_tu_set *)0x0;\n    if (local_bc != (cu_tu_set *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar8 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar8);\n    if (bVar22 == bVar21) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined1  [4])0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\n  }" if (parenthesized_expression "(do_display == 0)" ( (binary_expression "do_display == 0" identifier == number_literal) )) (compound_statement "{\n    if (bVar22 == bVar21) {\n      tu_count = (int)(elf_vma)local_98;\n      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);\n      tu_sets = local_78;\n    }\n    else {\n      cu_count = (int)(elf_vma)local_98;\n      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);\n      cu_sets = local_78;\n    }\n    if (local_bc != (cu_tu_set *)0x0) {\nLAB_000319e5:\n      local_a4 = (cu_tu_set *)0x0;\n      pdVar12 = local_88;\n      auVar18 = local_b0;\n      do {\n        ppcVar19 = &pdVar12->name;\n        if (pdVar1 < ppcVar19) {\n          signature_high._0_4_ = (char *)0x0;\n          signature_high._4_4_ = 0;\n          signature_low._0_4_ = 0;\n          signature_low._4_4_ = 0;\n        }\n        else {\n          byte_get_64((uchar *)pdVar12,&signature_high,&signature_low);\n        }\n        if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031a7a:\n          eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n          if ((elf_vma)eVar25 != 0) {\n            if ((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25) {\n              pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);\n              local_b8 = (undefined1  [4])(elf_vma)local_98;\n              goto LAB_00031dd2;\n            }\n            if (do_display == 0) {\n              if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;\n              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\n              *(char **)&local_8c->signature = pdVar12->uncompressed_name;\n              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;\n              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (cu_tu_set *)((int)&local_a4->signature + 1);\n        pdVar12 = (dwarf_section *)ppcVar19;\n        auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;\n      } while (local_a4 < local_bc);\n      if (do_display != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031e1e:\n      eVar25._0_4_ = 0;\n      pdVar12 = local_ac._4_4_;\n      do {\n        eVar25._0_4_ = (elf_vma)((int)(elf_vma)eVar25 + 1);\n        if (&pdVar12->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031e67:\n          local_b4 = (undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          local_b4 = (undefined1  [4])0x0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_00031e67;\n        }\n        if (do_display != 0) {\n          puVar24 = (undefined1 *)0x31e89;\n          pcVar8 = get_DW_SECT_short_name((uint)local_b4);\n          printf(" %8s",pcVar8);\n        }\n        pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n      } while ((uint)(elf_vma)eVar25 < (uint)local_b8);\n      if (do_display != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (cu_tu_set *)0x0) {\n      return 1;\n    }\n  }" { (if_statement "if (bVar22 == bVar21) {\n      tu_count = (int)(elf_vma)local_98;\n      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);\n      tu_sets = local_78;\n    }\n    else {\n      cu_count = (int)(elf_vma)local_98;\n      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);\n      cu_sets = local_78;\n    }" if (parenthesized_expression "(bVar22 == bVar21)" ( (binary_expression "bVar22 == bVar21" identifier == identifier) )) (compound_statement "{\n      tu_count = (int)(elf_vma)local_98;\n      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);\n      tu_sets = local_78;\n    }" { (expression_statement "tu_count = (int)(elf_vma)local_98;" (assignment_expression "tu_count = (int)(elf_vma)local_98" identifier = (cast_expression "(int)(elf_vma)local_98" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)local_98" ( (type_descriptor "elf_vma" type_identifier) ) identifier))) ;) (expression_statement "local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);" (assignment_expression "local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68)" identifier = (cast_expression "(cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68)" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xcalloc2((size_t)(elf_vma)local_98,0x68)" identifier (argument_list "((size_t)(elf_vma)local_98,0x68)" ( (cast_expression "(size_t)(elf_vma)local_98" ( (type_descriptor "size_t" primitive_type) ) (cast_expression "(elf_vma)local_98" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) , number_literal ))))) ;) (expression_statement "tu_sets = local_78;" (assignment_expression "tu_sets = local_78" identifier = identifier) ;) }) (else_clause "else {\n      cu_count = (int)(elf_vma)local_98;\n      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);\n      cu_sets = local_78;\n    }" else (compound_statement "{\n      cu_count = (int)(elf_vma)local_98;\n      local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);\n      cu_sets = local_78;\n    }" { (expression_statement "cu_count = (int)(elf_vma)local_98;" (assignment_expression "cu_count = (int)(elf_vma)local_98" identifier = (cast_expression "(int)(elf_vma)local_98" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)local_98" ( (type_descriptor "elf_vma" type_identifier) ) identifier))) ;) (expression_statement "local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68);" (assignment_expression "local_78 = (cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68)" identifier = (cast_expression "(cu_tu_set *)xcalloc2((size_t)(elf_vma)local_98,0x68)" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xcalloc2((size_t)(elf_vma)local_98,0x68)" identifier (argument_list "((size_t)(elf_vma)local_98,0x68)" ( (cast_expression "(size_t)(elf_vma)local_98" ( (type_descriptor "size_t" primitive_type) ) (cast_expression "(elf_vma)local_98" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) , number_literal ))))) ;) (expression_statement "cu_sets = local_78;" (assignment_expression "cu_sets = local_78" identifier = identifier) ;) }))) (if_statement "if (local_bc != (cu_tu_set *)0x0) {\nLAB_000319e5:\n      local_a4 = (cu_tu_set *)0x0;\n      pdVar12 = local_88;\n      auVar18 = local_b0;\n      do {\n        ppcVar19 = &pdVar12->name;\n        if (pdVar1 < ppcVar19) {\n          signature_high._0_4_ = (char *)0x0;\n          signature_high._4_4_ = 0;\n          signature_low._0_4_ = 0;\n          signature_low._4_4_ = 0;\n        }\n        else {\n          byte_get_64((uchar *)pdVar12,&signature_high,&signature_low);\n        }\n        if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031a7a:\n          eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n          if ((elf_vma)eVar25 != 0) {\n            if ((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25) {\n              pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);\n              local_b8 = (undefined1  [4])(elf_vma)local_98;\n              goto LAB_00031dd2;\n            }\n            if (do_display == 0) {\n              if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;\n              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\n              *(char **)&local_8c->signature = pdVar12->uncompressed_name;\n              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;\n              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (cu_tu_set *)((int)&local_a4->signature + 1);\n        pdVar12 = (dwarf_section *)ppcVar19;\n        auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;\n      } while (local_a4 < local_bc);\n      if (do_display != 0) goto LAB_00032214;\n    }" if (parenthesized_expression "(local_bc != (cu_tu_set *)0x0)" ( (binary_expression "local_bc != (cu_tu_set *)0x0" identifier != (cast_expression "(cu_tu_set *)0x0" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000319e5:\n      local_a4 = (cu_tu_set *)0x0;\n      pdVar12 = local_88;\n      auVar18 = local_b0;\n      do {\n        ppcVar19 = &pdVar12->name;\n        if (pdVar1 < ppcVar19) {\n          signature_high._0_4_ = (char *)0x0;\n          signature_high._4_4_ = 0;\n          signature_low._0_4_ = 0;\n          signature_low._4_4_ = 0;\n        }\n        else {\n          byte_get_64((uchar *)pdVar12,&signature_high,&signature_low);\n        }\n        if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031a7a:\n          eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n          if ((elf_vma)eVar25 != 0) {\n            if ((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25) {\n              pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);\n              local_b8 = (undefined1  [4])(elf_vma)local_98;\n              goto LAB_00031dd2;\n            }\n            if (do_display == 0) {\n              if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;\n              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\n              *(char **)&local_8c->signature = pdVar12->uncompressed_name;\n              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;\n              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (cu_tu_set *)((int)&local_a4->signature + 1);\n        pdVar12 = (dwarf_section *)ppcVar19;\n        auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;\n      } while (local_a4 < local_bc);\n      if (do_display != 0) goto LAB_00032214;\n    }" { (labeled_statement "LAB_000319e5:\n      local_a4 = (cu_tu_set *)0x0;" statement_identifier : (expression_statement "local_a4 = (cu_tu_set *)0x0;" (assignment_expression "local_a4 = (cu_tu_set *)0x0" identifier = (cast_expression "(cu_tu_set *)0x0" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pdVar12 = local_88;" (assignment_expression "pdVar12 = local_88" identifier = identifier) ;) (expression_statement "auVar18 = local_b0;" (assignment_expression "auVar18 = local_b0" identifier = identifier) ;) (do_statement "do {\n        ppcVar19 = &pdVar12->name;\n        if (pdVar1 < ppcVar19) {\n          signature_high._0_4_ = (char *)0x0;\n          signature_high._4_4_ = 0;\n          signature_low._0_4_ = 0;\n          signature_low._4_4_ = 0;\n        }\n        else {\n          byte_get_64((uchar *)pdVar12,&signature_high,&signature_low);\n        }\n        if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031a7a:\n          eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n          if ((elf_vma)eVar25 != 0) {\n            if ((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25) {\n              pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);\n              local_b8 = (undefined1  [4])(elf_vma)local_98;\n              goto LAB_00031dd2;\n            }\n            if (do_display == 0) {\n              if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;\n              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\n              *(char **)&local_8c->signature = pdVar12->uncompressed_name;\n              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;\n              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (cu_tu_set *)((int)&local_a4->signature + 1);\n        pdVar12 = (dwarf_section *)ppcVar19;\n        auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;\n      } while (local_a4 < local_bc);" do (compound_statement "{\n        ppcVar19 = &pdVar12->name;\n        if (pdVar1 < ppcVar19) {\n          signature_high._0_4_ = (char *)0x0;\n          signature_high._4_4_ = 0;\n          signature_low._0_4_ = 0;\n          signature_low._4_4_ = 0;\n        }\n        else {\n          byte_get_64((uchar *)pdVar12,&signature_high,&signature_low);\n        }\n        if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031a7a:\n          eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n          if ((elf_vma)eVar25 != 0) {\n            if ((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25) {\n              pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);\n              local_b8 = (undefined1  [4])(elf_vma)local_98;\n              goto LAB_00031dd2;\n            }\n            if (do_display == 0) {\n              if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;\n              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\n              *(char **)&local_8c->signature = pdVar12->uncompressed_name;\n              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;\n              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (cu_tu_set *)((int)&local_a4->signature + 1);\n        pdVar12 = (dwarf_section *)ppcVar19;\n        auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;\n      }" { (expression_statement "ppcVar19 = &pdVar12->name;" (assignment_expression "ppcVar19 = &pdVar12->name" identifier = (pointer_expression "&pdVar12->name" & (field_expression "pdVar12->name" identifier -> field_identifier))) ;) (if_statement "if (pdVar1 < ppcVar19) {\n          signature_high._0_4_ = (char *)0x0;\n          signature_high._4_4_ = 0;\n          signature_low._0_4_ = 0;\n          signature_low._4_4_ = 0;\n        }\n        else {\n          byte_get_64((uchar *)pdVar12,&signature_high,&signature_low);\n        }" if (parenthesized_expression "(pdVar1 < ppcVar19)" ( (binary_expression "pdVar1 < ppcVar19" identifier < identifier) )) (compound_statement "{\n          signature_high._0_4_ = (char *)0x0;\n          signature_high._4_4_ = 0;\n          signature_low._0_4_ = 0;\n          signature_low._4_4_ = 0;\n        }" { (expression_statement "signature_high._0_4_ = (char *)0x0;" (assignment_expression "signature_high._0_4_ = (char *)0x0" (field_expression "signature_high._0_4_" identifier . field_identifier) = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "signature_high._4_4_ = 0;" (assignment_expression "signature_high._4_4_ = 0" (field_expression "signature_high._4_4_" identifier . field_identifier) = number_literal) ;) (expression_statement "signature_low._0_4_ = 0;" (assignment_expression "signature_low._0_4_ = 0" (field_expression "signature_low._0_4_" identifier . field_identifier) = number_literal) ;) (expression_statement "signature_low._4_4_ = 0;" (assignment_expression "signature_low._4_4_ = 0" (field_expression "signature_low._4_4_" identifier . field_identifier) = number_literal) ;) }) (else_clause "else {\n          byte_get_64((uchar *)pdVar12,&signature_high,&signature_low);\n        }" else (compound_statement "{\n          byte_get_64((uchar *)pdVar12,&signature_high,&signature_low);\n        }" { (expression_statement "byte_get_64((uchar *)pdVar12,&signature_high,&signature_low);" (call_expression "byte_get_64((uchar *)pdVar12,&signature_high,&signature_low)" identifier (argument_list "((uchar *)pdVar12,&signature_high,&signature_low)" ( (cast_expression "(uchar *)pdVar12" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (pointer_expression "&signature_high" & identifier) , (pointer_expression "&signature_low" & identifier) ))) ;) }))) (if_statement "if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031a7a:\n          eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n          if ((elf_vma)eVar25 != 0) {\n            if ((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25) {\n              pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);\n              local_b8 = (undefined1  [4])(elf_vma)local_98;\n              goto LAB_00031dd2;\n            }\n            if (do_display == 0) {\n              if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;\n              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\n              *(char **)&local_8c->signature = pdVar12->uncompressed_name;\n              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;\n              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n        goto LAB_00031a7a;" if (parenthesized_expression "(&((dwarf_section *)auVar18)->compressed_name < pdVar1)" ( (binary_expression "&((dwarf_section *)auVar18)->compressed_name < pdVar1" (pointer_expression "&((dwarf_section *)auVar18)->compressed_name" & (field_expression "((dwarf_section *)auVar18)->compressed_name" (parenthesized_expression "((dwarf_section *)auVar18)" ( (cast_expression "(dwarf_section *)auVar18" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier)) < identifier) )) (compound_statement "{\n          iVar13 = 4;\nLAB_00031a7a:\n          eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n          if ((elf_vma)eVar25 != 0) {\n            if ((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25) {\n              pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);\n              local_b8 = (undefined1  [4])(elf_vma)local_98;\n              goto LAB_00031dd2;\n            }\n            if (do_display == 0) {\n              if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;\n              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\n              *(char **)&local_8c->signature = pdVar12->uncompressed_name;\n              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;\n              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }" { (expression_statement "iVar13 = 4;" (assignment_expression "iVar13 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00031a7a:\n          eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);" statement_identifier : (expression_statement "eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);" (assignment_expression "eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13)" (field_expression "eVar25._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)((uchar *)auVar18,iVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)auVar18,iVar13)" ( (cast_expression "(uchar *)auVar18" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) (if_statement "if ((elf_vma)eVar25 != 0) {\n            if ((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25) {\n              pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);\n              local_b8 = (undefined1  [4])(elf_vma)local_98;\n              goto LAB_00031dd2;\n            }\n            if (do_display == 0) {\n              if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;\n              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\n              *(char **)&local_8c->signature = pdVar12->uncompressed_name;\n              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;\n              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }" if (parenthesized_expression "((elf_vma)eVar25 != 0)" ( (binary_expression "(elf_vma)eVar25 != 0" (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier) != number_literal) )) (compound_statement "{\n            if ((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25) {\n              pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);\n              local_b8 = (undefined1  [4])(elf_vma)local_98;\n              goto LAB_00031dd2;\n            }\n            if (do_display == 0) {\n              if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;\n              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\n              *(char **)&local_8c->signature = pdVar12->uncompressed_name;\n              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;\n              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }" { (if_statement "if ((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25) {\n              pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);\n              local_b8 = (undefined1  [4])(elf_vma)local_98;\n              goto LAB_00031dd2;\n            }" if (parenthesized_expression "((uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25)" ( (binary_expression "(uint)(elf_vma)local_98 < (uint)(elf_vma)eVar25" (cast_expression "(uint)(elf_vma)local_98" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(elf_vma)local_98" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) < (cast_expression "(uint)(elf_vma)eVar25" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier))) )) (compound_statement "{\n              pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);\n              local_b8 = (undefined1  [4])(elf_vma)local_98;\n              goto LAB_00031dd2;\n            }" { (expression_statement "pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5)" identifier (argument_list "(0,\n                                         "Row index (%u) is larger than number of used entries (%u)\n"\n                                         ,5)" ( number_literal , (string_literal ""Row index (%u) is larger than number of used entries (%u)\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "local_b8 = (undefined1  [4])(elf_vma)local_98;" (assignment_expression "local_b8 = (undefined1  [4])(elf_vma)local_98" identifier = (cast_expression "(undefined1  [4])(elf_vma)local_98" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) (cast_expression "(elf_vma)local_98" ( (type_descriptor "elf_vma" type_identifier) ) identifier))) ;) (goto_statement "goto LAB_00031dd2;" goto statement_identifier ;) })) (if_statement "if (do_display == 0) {\n              if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;\n              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\n              *(char **)&local_8c->signature = pdVar12->uncompressed_name;\n              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;\n              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }" if (parenthesized_expression "(do_display == 0)" ( (binary_expression "do_display == 0" identifier == number_literal) )) (compound_statement "{\n              if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;\n              local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\n              *(char **)&local_8c->signature = pdVar12->uncompressed_name;\n              *(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;\n              if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;\n            }" { (if_statement "if (pdVar1 <= ppcVar19) {\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }" if (parenthesized_expression "(pdVar1 <= ppcVar19)" ( (binary_expression "pdVar1 <= ppcVar19" identifier <= identifier) )) (compound_statement "{\n                pcVar8 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }" { (expression_statement "pcVar8 = "Signature (%p) extends beyond end of space in section\n";" (assignment_expression "pcVar8 = "Signature (%p) extends beyond end of space in section\n"" identifier = (string_literal ""Signature (%p) extends beyond end of space in section\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0003156a;" goto statement_identifier ;) })) (expression_statement "p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name;" (assignment_expression "p_Var5 = (_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name" identifier = (cast_expression "(_func_elf_vma_uchar_ptr_int *)pdVar12->compressed_name" ( (type_descriptor "_func_elf_vma_uchar_ptr_int *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pdVar12->compressed_name" identifier -> field_identifier))) ;) (expression_statement "local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);" (assignment_expression "local_8c = local_78 + ((int)(elf_vma)eVar25 - 1)" identifier = (binary_expression "local_78 + ((int)(elf_vma)eVar25 - 1)" identifier + (parenthesized_expression "((int)(elf_vma)eVar25 - 1)" ( (binary_expression "(int)(elf_vma)eVar25 - 1" (cast_expression "(int)(elf_vma)eVar25" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) - number_literal) )))) ;) (expression_statement "*(char **)&local_8c->signature = pdVar12->uncompressed_name;" (assignment_expression "*(char **)&local_8c->signature = pdVar12->uncompressed_name" (pointer_expression "*(char **)&local_8c->signature" * (cast_expression "(char **)&local_8c->signature" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_8c->signature" & (field_expression "local_8c->signature" identifier -> field_identifier)))) = (field_expression "pdVar12->uncompressed_name" identifier -> field_identifier)) ;) (expression_statement "*(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5;" (assignment_expression "*(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4) = p_Var5" (pointer_expression "*(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4)" * (cast_expression "(_func_elf_vma_uchar_ptr_int **)((int)&local_8c->signature + 4)" ( (type_descriptor "_func_elf_vma_uchar_ptr_int **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&local_8c->signature + 4)" ( (binary_expression "(int)&local_8c->signature + 4" (cast_expression "(int)&local_8c->signature" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_8c->signature" & (field_expression "local_8c->signature" identifier -> field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;" (assignment_expression "uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4" identifier = (binary_expression "((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4" (parenthesized_expression "((int)(elf_vma)eVar25 + 0x3fffffff)" ( (binary_expression "(int)(elf_vma)eVar25 + 0x3fffffff" (cast_expression "(int)(elf_vma)eVar25" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) + number_literal) )) * identifier)) ;) (expression_statement "pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);" (assignment_expression "pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17)" identifier = (cast_expression "(dwarf_section *)((int)ppcVar14 + uVar17)" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppcVar14 + uVar17)" ( (binary_expression "(int)ppcVar14 + uVar17" (cast_expression "(int)ppcVar14" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) (if_statement "if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) goto LAB_00031db8;" if (parenthesized_expression "((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12))" ( (binary_expression "(CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)" (parenthesized_expression "(CARRY4(uVar17,(uint)ppcVar14))" ( (call_expression "CARRY4(uVar17,(uint)ppcVar14)" identifier (argument_list "(uVar17,(uint)ppcVar14)" ( identifier , (cast_expression "(uint)ppcVar14" ( (type_descriptor "uint" type_identifier) ) identifier) ))) )) || (parenthesized_expression "(pdVar1 < pdVar12)" ( (binary_expression "pdVar1 < pdVar12" identifier < identifier) ))) )) (goto_statement "goto LAB_00031db8;" goto statement_identifier ;)) (if_statement "if (local_b8 != (undefined1  [4])0x0) goto LAB_00031af3;" if (parenthesized_expression "(local_b8 != (undefined1  [4])0x0)" ( (binary_expression "local_b8 != (undefined1  [4])0x0" identifier != (cast_expression "(undefined1  [4])0x0" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) number_literal)) )) (goto_statement "goto LAB_00031af3;" goto statement_identifier ;)) }) (else_clause "else {\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }" else (compound_statement "{\n              uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;\n              pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);\n              if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }\n              pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);\n              pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar10,local_a4,pcVar8);\n              if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }" { (expression_statement "uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4;" (assignment_expression "uVar17 = ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4" identifier = (binary_expression "((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4" (parenthesized_expression "((int)(elf_vma)eVar25 + 0x3fffffff)" ( (binary_expression "(int)(elf_vma)eVar25 + 0x3fffffff" (cast_expression "(int)(elf_vma)eVar25" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) + number_literal) )) * identifier)) ;) (expression_statement "pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17);" (assignment_expression "pdVar12 = (dwarf_section *)((int)ppcVar14 + uVar17)" identifier = (cast_expression "(dwarf_section *)((int)ppcVar14 + uVar17)" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppcVar14 + uVar17)" ( (binary_expression "(int)ppcVar14 + uVar17" (cast_expression "(int)ppcVar14" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) (if_statement "if ((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)) {\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }" if (parenthesized_expression "((CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12))" ( (binary_expression "(CARRY4(uVar17,(uint)ppcVar14)) || (pdVar1 < pdVar12)" (parenthesized_expression "(CARRY4(uVar17,(uint)ppcVar14))" ( (call_expression "CARRY4(uVar17,(uint)ppcVar14)" identifier (argument_list "(uVar17,(uint)ppcVar14)" ( identifier , (cast_expression "(uint)ppcVar14" ( (type_descriptor "uint" type_identifier) ) identifier) ))) )) || (parenthesized_expression "(pdVar1 < pdVar12)" ( (binary_expression "pdVar1 < pdVar12" identifier < identifier) ))) )) (compound_statement "{\nLAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);\nLAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);\n                return 0;\n              }" { (labeled_statement "LAB_00031db8:\n                pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);" statement_identifier : (expression_statement "pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5)" identifier (argument_list "(0,\n                                           "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                           ,5)" ( number_literal , (string_literal ""Row index (%u) * num columns (%u) > space remaining in section\n"" " string_content escape_sequence ") , number_literal ))))) ;)) (labeled_statement "LAB_00031dd2:\n                warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);" statement_identifier : (expression_statement "warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8);" (call_expression "warn(pcVar8,(undefined4)(elf_vma)eVar25,local_b8)" identifier (argument_list "(pcVar8,(undefined4)(elf_vma)eVar25,local_b8)" ( identifier , (cast_expression "(undefined4)(elf_vma)eVar25" ( (type_descriptor "undefined4" type_identifier) ) (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) , identifier ))) ;)) (return_statement "return 0;" return number_literal ;) })) (expression_statement "pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_);" (assignment_expression "pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_)" identifier = (call_expression "dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_)" identifier (argument_list "(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                      CONCAT44(puVar24,buf),(char *)signature_high,\n                                      signature_high._4_4_)" ( (call_expression "CONCAT44(signature_low._4_4_,(int)signature_low)" identifier (argument_list "(signature_low._4_4_,(int)signature_low)" ( (field_expression "signature_low._4_4_" identifier . field_identifier) , (cast_expression "(int)signature_low" ( (type_descriptor "int" primitive_type) ) identifier) ))) , (call_expression "CONCAT44(puVar24,buf)" identifier (argument_list "(puVar24,buf)" ( identifier , identifier ))) , (cast_expression "(char *)signature_high" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (field_expression "signature_high._4_4_" identifier . field_identifier) )))) ;) (expression_statement "pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);" (assignment_expression "pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [%3d] 0x%s",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [%3d] 0x%s",5)" identifier (argument_list "(0,"  [%3d] 0x%s",5)" ( number_literal , (string_literal ""  [%3d] 0x%s"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar10,local_a4,pcVar8);" (call_expression "printf(pcVar10,local_a4,pcVar8)" identifier (argument_list "(pcVar10,local_a4,pcVar8)" ( identifier , identifier , identifier ))) ;) (if_statement "if (local_b8 != (undefined1  [4])0x0) {\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }" if (parenthesized_expression "(local_b8 != (undefined1  [4])0x0)" ( (binary_expression "local_b8 != (undefined1  [4])0x0" identifier != (cast_expression "(undefined1  [4])0x0" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) number_literal)) )) (compound_statement "{\n                local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);\nLAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;\n                pdVar11 = local_ac._4_4_;\n                do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);\n                if (do_display == 0) goto LAB_00031a20;\n              }" { (expression_statement "local_8c = local_78 + ((int)(elf_vma)eVar25 - 1);" (assignment_expression "local_8c = local_78 + ((int)(elf_vma)eVar25 - 1)" identifier = (binary_expression "local_78 + ((int)(elf_vma)eVar25 - 1)" identifier + (parenthesized_expression "((int)(elf_vma)eVar25 - 1)" ( (binary_expression "(int)(elf_vma)eVar25 - 1" (cast_expression "(int)(elf_vma)eVar25" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) - number_literal) )))) ;) (labeled_statement "LAB_00031af3:\n                local_b4 = (undefined1  [4])0x0;" statement_identifier : (expression_statement "local_b4 = (undefined1  [4])0x0;" (assignment_expression "local_b4 = (undefined1  [4])0x0" identifier = (cast_expression "(undefined1  [4])0x0" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) number_literal)) ;)) (expression_statement "pdVar11 = local_ac._4_4_;" (assignment_expression "pdVar11 = local_ac._4_4_" identifier = (field_expression "local_ac._4_4_" identifier . field_identifier)) ;) (do_statement "do {\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                } while ((uint)local_b4 < (uint)local_b8);" do (compound_statement "{\n                  local_b4 = (undefined1  [4])((int)local_b4 + 1);\n                  if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }\nLAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n                  pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n                }" { (expression_statement "local_b4 = (undefined1  [4])((int)local_b4 + 1);" (assignment_expression "local_b4 = (undefined1  [4])((int)local_b4 + 1)" identifier = (call_expression "(undefined1  [4])((int)local_b4 + 1)" (parenthesized_expression "(undefined1  [4])" ( (subscript_expression "undefined1  [4]" identifier [ number_literal ]) )) (argument_list "((int)local_b4 + 1)" ( (binary_expression "(int)local_b4 + 1" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (if_statement "if (&pdVar12->compressed_name < pdVar1) {\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }\n                  else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }" if (parenthesized_expression "(&pdVar12->compressed_name < pdVar1)" ( (binary_expression "&pdVar12->compressed_name < pdVar1" (pointer_expression "&pdVar12->compressed_name" & (field_expression "pdVar12->compressed_name" identifier -> field_identifier)) < identifier) )) (compound_statement "{\n                    iVar13 = 4;\nLAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n                    if (do_display == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);\n                  }" { (expression_statement "iVar13 = 4;" (assignment_expression "iVar13 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00031bd5:\n                    eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);" statement_identifier : (expression_statement "eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);" (assignment_expression "eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13)" (field_expression "eVar25._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)((uchar *)pdVar12,iVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pdVar12,iVar13)" ( (cast_expression "(uchar *)pdVar12" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) (if_statement "if (do_display == 0) goto LAB_00031b3e;" if (parenthesized_expression "(do_display == 0)" ( (binary_expression "do_display == 0" identifier == number_literal) )) (goto_statement "goto LAB_00031b3e;" goto statement_identifier ;)) (labeled_statement "LAB_00031bf1:\n                    printf(" %8d",(undefined4)(elf_vma)eVar25);" statement_identifier : (expression_statement "printf(" %8d",(undefined4)(elf_vma)eVar25);" (call_expression "printf(" %8d",(undefined4)(elf_vma)eVar25)" identifier (argument_list "(" %8d",(undefined4)(elf_vma)eVar25)" ( (string_literal "" %8d"" " string_content ") , (cast_expression "(undefined4)(elf_vma)eVar25" ( (type_descriptor "undefined4" type_identifier) ) (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ))) ;)) }) (else_clause "else {\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }" else (compound_statement "{\n                    eVar25._0_4_ = 0;\n                    if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;\n                    if (do_display != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }\n                    /* WARNING: Store size is inaccurate */\n                    local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;\n                    *(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;\n                  }" { (expression_statement "eVar25._0_4_ = 0;" (assignment_expression "eVar25._0_4_ = 0" (field_expression "eVar25._0_4_" identifier . field_identifier) = number_literal) ;) (if_statement "if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       ) goto LAB_00031bd5;" if (parenthesized_expression "((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)\n                       )" ( (binary_expression "(pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)" (parenthesized_expression "(pdVar12 < pdVar1)" ( (binary_expression "pdVar12 < pdVar1" identifier < identifier) )) && (parenthesized_expression "(iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)" ( (comma_expression "iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8" (assignment_expression "iVar13 = (int)pdVar1 - (int)pdVar12" identifier = (binary_expression "(int)pdVar1 - (int)pdVar12" (cast_expression "(int)pdVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pdVar12" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar13 - 1U < 8" (binary_expression "iVar13 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00031bd5;" goto statement_identifier ;)) (if_statement "if (do_display != 0) goto LAB_00031bf1;" if (parenthesized_expression "(do_display != 0)" ( (binary_expression "do_display != 0" identifier != number_literal) )) (goto_statement "goto LAB_00031bf1;" goto statement_identifier ;)) (labeled_statement "LAB_00031b3e:\n                    if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }" statement_identifier : (if_statement "if (&pdVar11->compressed_name < pdVar1) {\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }" if (parenthesized_expression "(&pdVar11->compressed_name < pdVar1)" ( (binary_expression "&pdVar11->compressed_name < pdVar1" (pointer_expression "&pdVar11->compressed_name" & (field_expression "pdVar11->compressed_name" identifier -> field_identifier)) < identifier) )) (compound_statement "{\n                      iVar13 = 4;\nLAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                      if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }\n                    }" { (expression_statement "iVar13 = 4;" (assignment_expression "iVar13 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00031c15:\n                      eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);" statement_identifier : (expression_statement "eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);" (assignment_expression "eVar26._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13)" (field_expression "eVar26._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)((uchar *)pdVar11,iVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pdVar11,iVar13)" ( (cast_expression "(uchar *)pdVar11" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) (if_statement "if (7 < (uint)(elf_vma)eVar26) {\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }" if (parenthesized_expression "(7 < (uint)(elf_vma)eVar26)" ( (binary_expression "7 < (uint)(elf_vma)eVar26" number_literal < (cast_expression "(uint)(elf_vma)eVar26" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(elf_vma)eVar26" ( (type_descriptor "elf_vma" type_identifier) ) identifier))) )) (compound_statement "{\n                        pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);\n                        warn(pcVar8,(undefined4)(elf_vma)eVar26);\n                        goto LAB_00031b71;\n                      }" { (expression_statement "pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5)" identifier = (cast_expression "(char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5)" identifier (argument_list "(0,"Overlarge Dwarf section index detected: %u\n",\n                                                   5)" ( number_literal , (string_literal ""Overlarge Dwarf section index detected: %u\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar8,(undefined4)(elf_vma)eVar26);" (call_expression "warn(pcVar8,(undefined4)(elf_vma)eVar26)" identifier (argument_list "(pcVar8,(undefined4)(elf_vma)eVar26)" ( identifier , (cast_expression "(undefined4)(elf_vma)eVar26" ( (type_descriptor "undefined4" type_identifier) ) (cast_expression "(elf_vma)eVar26" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ))) ;) (goto_statement "goto LAB_00031b71;" goto statement_identifier ;) })) }) (else_clause "else {\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }" else (compound_statement "{\n                      if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;\n                      eVar26._0_4_ = 0;\n                    }" { (if_statement "if ((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)) goto LAB_00031c15;" if (parenthesized_expression "((pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))" ( (binary_expression "(pdVar11 < pdVar1) &&\n                         (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)" (parenthesized_expression "(pdVar11 < pdVar1)" ( (binary_expression "pdVar11 < pdVar1" identifier < identifier) )) && (parenthesized_expression "(iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)" ( (comma_expression "iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8" (assignment_expression "iVar13 = (int)pdVar1 - (int)pdVar11" identifier = (binary_expression "(int)pdVar1 - (int)pdVar11" (cast_expression "(int)pdVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pdVar11" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar13 - 1U < 8" (binary_expression "iVar13 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00031c15;" goto statement_identifier ;)) (expression_statement "eVar26._0_4_ = 0;" (assignment_expression "eVar26._0_4_ = 0" (field_expression "eVar26._0_4_" identifier . field_identifier) = number_literal) ;) })))) comment (expression_statement "local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25;" (assignment_expression "local_8c->section_offsets[(int)(elf_vma)eVar26] = (elf_vma)eVar25" (subscript_expression "local_8c->section_offsets[(int)(elf_vma)eVar26]" (field_expression "local_8c->section_offsets" identifier -> field_identifier) [ (cast_expression "(int)(elf_vma)eVar26" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)eVar26" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ]) = (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) (expression_statement "*(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0;" (assignment_expression "*(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4) =\n                         0" (pointer_expression "*(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4)" * (cast_expression "(undefined4 *)((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4)" ( (binary_expression "(int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8 + 4" (binary_expression "(int)local_8c->section_offsets + (int)(elf_vma)eVar26 * 8" (cast_expression "(int)local_8c->section_offsets" ( (type_descriptor "int" primitive_type) ) (field_expression "local_8c->section_offsets" identifier -> field_identifier)) + (binary_expression "(int)(elf_vma)eVar26 * 8" (cast_expression "(int)(elf_vma)eVar26" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)eVar26" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) * number_literal)) + number_literal) )))) = number_literal) ;) }))) (labeled_statement "LAB_00031b71:\n                  pdVar11 = (dwarf_section *)&pdVar11->compressed_name;" statement_identifier : (expression_statement "pdVar11 = (dwarf_section *)&pdVar11->compressed_name;" (assignment_expression "pdVar11 = (dwarf_section *)&pdVar11->compressed_name" identifier = (cast_expression "(dwarf_section *)&pdVar11->compressed_name" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pdVar11->compressed_name" & (field_expression "pdVar11->compressed_name" identifier -> field_identifier)))) ;)) (expression_statement "pdVar12 = (dwarf_section *)&pdVar12->compressed_name;" (assignment_expression "pdVar12 = (dwarf_section *)&pdVar12->compressed_name" identifier = (cast_expression "(dwarf_section *)&pdVar12->compressed_name" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pdVar12->compressed_name" & (field_expression "pdVar12->compressed_name" identifier -> field_identifier)))) ;) }) while (parenthesized_expression "((uint)local_b4 < (uint)local_b8)" ( (binary_expression "(uint)local_b4 < (uint)local_b8" (cast_expression "(uint)local_b4" ( (type_descriptor "uint" type_identifier) ) identifier) < (cast_expression "(uint)local_b8" ( (type_descriptor "uint" type_identifier) ) identifier)) )) ;) (if_statement "if (do_display == 0) goto LAB_00031a20;" if (parenthesized_expression "(do_display == 0)" ( (binary_expression "do_display == 0" identifier == number_literal) )) (goto_statement "goto LAB_00031a20;" goto statement_identifier ;)) })) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) }))) })) }) (else_clause "else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n        goto LAB_00031a7a;" else (if_statement "if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n        goto LAB_00031a7a;" if (parenthesized_expression "(((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))" ( (binary_expression "((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8)" (parenthesized_expression "((uint)auVar18 < pdVar1)" ( (binary_expression "(uint)auVar18 < pdVar1" (cast_expression "(uint)auVar18" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) )) && (parenthesized_expression "(iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8)" ( (comma_expression "iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8" (assignment_expression "iVar13 = (int)pdVar1 - (int)auVar18" identifier = (binary_expression "(int)pdVar1 - (int)auVar18" (cast_expression "(int)pdVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)auVar18" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar13 - 1U < 8" (binary_expression "iVar13 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00031a7a;" goto statement_identifier ;)))) (labeled_statement "LAB_00031a20:\n        local_a4 = (cu_tu_set *)((int)&local_a4->signature + 1);" statement_identifier : (expression_statement "local_a4 = (cu_tu_set *)((int)&local_a4->signature + 1);" (assignment_expression "local_a4 = (cu_tu_set *)((int)&local_a4->signature + 1)" identifier = (cast_expression "(cu_tu_set *)((int)&local_a4->signature + 1)" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_a4->signature + 1)" ( (binary_expression "(int)&local_a4->signature + 1" (cast_expression "(int)&local_a4->signature" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_a4->signature" & (field_expression "local_a4->signature" identifier -> field_identifier))) + number_literal) )))) ;)) (expression_statement "pdVar12 = (dwarf_section *)ppcVar19;" (assignment_expression "pdVar12 = (dwarf_section *)ppcVar19" identifier = (cast_expression "(dwarf_section *)ppcVar19" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;" (assignment_expression "auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name" identifier = (binary_expression "(undefined1  [4])&((dwarf_section *)auVar18)->compressed_name" (parenthesized_expression "(undefined1  [4])" ( (subscript_expression "undefined1  [4]" identifier [ number_literal ]) )) & (field_expression "((dwarf_section *)auVar18)->compressed_name" (parenthesized_expression "((dwarf_section *)auVar18)" ( (cast_expression "(dwarf_section *)auVar18" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier))) ;) }) while (parenthesized_expression "(local_a4 < local_bc)" ( (binary_expression "local_a4 < local_bc" identifier < identifier) )) ;) (if_statement "if (do_display != 0) goto LAB_00032214;" if (parenthesized_expression "(do_display != 0)" ( (binary_expression "do_display != 0" identifier != number_literal) )) (goto_statement "goto LAB_00032214;" goto statement_identifier ;)) })) (if_statement "if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031e1e:\n      eVar25._0_4_ = 0;\n      pdVar12 = local_ac._4_4_;\n      do {\n        eVar25._0_4_ = (elf_vma)((int)(elf_vma)eVar25 + 1);\n        if (&pdVar12->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031e67:\n          local_b4 = (undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          local_b4 = (undefined1  [4])0x0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_00031e67;\n        }\n        if (do_display != 0) {\n          puVar24 = (undefined1 *)0x31e89;\n          pcVar8 = get_DW_SECT_short_name((uint)local_b4);\n          printf(" %8s",pcVar8);\n        }\n        pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n      } while ((uint)(elf_vma)eVar25 < (uint)local_b8);\n      if (do_display != 0) goto LAB_0003227a;\n    }" if (parenthesized_expression "(local_b8 != (undefined1  [4])0x0)" ( (binary_expression "local_b8 != (undefined1  [4])0x0" identifier != (cast_expression "(undefined1  [4])0x0" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) number_literal)) )) (compound_statement "{\nLAB_00031e1e:\n      eVar25._0_4_ = 0;\n      pdVar12 = local_ac._4_4_;\n      do {\n        eVar25._0_4_ = (elf_vma)((int)(elf_vma)eVar25 + 1);\n        if (&pdVar12->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031e67:\n          local_b4 = (undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          local_b4 = (undefined1  [4])0x0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_00031e67;\n        }\n        if (do_display != 0) {\n          puVar24 = (undefined1 *)0x31e89;\n          pcVar8 = get_DW_SECT_short_name((uint)local_b4);\n          printf(" %8s",pcVar8);\n        }\n        pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n      } while ((uint)(elf_vma)eVar25 < (uint)local_b8);\n      if (do_display != 0) goto LAB_0003227a;\n    }" { (labeled_statement "LAB_00031e1e:\n      eVar25._0_4_ = 0;" statement_identifier : (expression_statement "eVar25._0_4_ = 0;" (assignment_expression "eVar25._0_4_ = 0" (field_expression "eVar25._0_4_" identifier . field_identifier) = number_literal) ;)) (expression_statement "pdVar12 = local_ac._4_4_;" (assignment_expression "pdVar12 = local_ac._4_4_" identifier = (field_expression "local_ac._4_4_" identifier . field_identifier)) ;) (do_statement "do {\n        eVar25._0_4_ = (elf_vma)((int)(elf_vma)eVar25 + 1);\n        if (&pdVar12->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031e67:\n          local_b4 = (undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          local_b4 = (undefined1  [4])0x0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_00031e67;\n        }\n        if (do_display != 0) {\n          puVar24 = (undefined1 *)0x31e89;\n          pcVar8 = get_DW_SECT_short_name((uint)local_b4);\n          printf(" %8s",pcVar8);\n        }\n        pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n      } while ((uint)(elf_vma)eVar25 < (uint)local_b8);" do (compound_statement "{\n        eVar25._0_4_ = (elf_vma)((int)(elf_vma)eVar25 + 1);\n        if (&pdVar12->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031e67:\n          local_b4 = (undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          local_b4 = (undefined1  [4])0x0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_00031e67;\n        }\n        if (do_display != 0) {\n          puVar24 = (undefined1 *)0x31e89;\n          pcVar8 = get_DW_SECT_short_name((uint)local_b4);\n          printf(" %8s",pcVar8);\n        }\n        pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n      }" { (expression_statement "eVar25._0_4_ = (elf_vma)((int)(elf_vma)eVar25 + 1);" (assignment_expression "eVar25._0_4_ = (elf_vma)((int)(elf_vma)eVar25 + 1)" (field_expression "eVar25._0_4_" identifier . field_identifier) = (call_expression "(elf_vma)((int)(elf_vma)eVar25 + 1)" (parenthesized_expression "(elf_vma)" ( identifier )) (argument_list "((int)(elf_vma)eVar25 + 1)" ( (binary_expression "(int)(elf_vma)eVar25 + 1" (cast_expression "(int)(elf_vma)eVar25" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) + number_literal) )))) ;) (if_statement "if (&pdVar12->compressed_name < pdVar1) {\n          iVar13 = 4;\nLAB_00031e67:\n          local_b4 = (undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          local_b4 = (undefined1  [4])0x0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_00031e67;\n        }" if (parenthesized_expression "(&pdVar12->compressed_name < pdVar1)" ( (binary_expression "&pdVar12->compressed_name < pdVar1" (pointer_expression "&pdVar12->compressed_name" & (field_expression "pdVar12->compressed_name" identifier -> field_identifier)) < identifier) )) (compound_statement "{\n          iVar13 = 4;\nLAB_00031e67:\n          local_b4 = (undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13);\n        }" { (expression_statement "iVar13 = 4;" (assignment_expression "iVar13 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00031e67:\n          local_b4 = (undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13);" statement_identifier : (expression_statement "local_b4 = (undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13);" (assignment_expression "local_b4 = (undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13)" identifier = (call_expression "(undefined1  [4])(*byte_get)((uchar *)pdVar12,iVar13)" (call_expression "(undefined1  [4])(*byte_get)" (parenthesized_expression "(undefined1  [4])" ( (subscript_expression "undefined1  [4]" identifier [ number_literal ]) )) (argument_list "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) ))) (argument_list "((uchar *)pdVar12,iVar13)" ( (cast_expression "(uchar *)pdVar12" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) }) (else_clause "else {\n          local_b4 = (undefined1  [4])0x0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_00031e67;\n        }" else (compound_statement "{\n          local_b4 = (undefined1  [4])0x0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_00031e67;\n        }" { (expression_statement "local_b4 = (undefined1  [4])0x0;" (assignment_expression "local_b4 = (undefined1  [4])0x0" identifier = (cast_expression "(undefined1  [4])0x0" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) number_literal)) ;) (if_statement "if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_00031e67;" if (parenthesized_expression "((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))" ( (binary_expression "(pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)" (parenthesized_expression "(pdVar12 < pdVar1)" ( (binary_expression "pdVar12 < pdVar1" identifier < identifier) )) && (parenthesized_expression "(iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)" ( (comma_expression "iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8" (assignment_expression "iVar13 = (int)pdVar1 - (int)pdVar12" identifier = (binary_expression "(int)pdVar1 - (int)pdVar12" (cast_expression "(int)pdVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pdVar12" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar13 - 1U < 8" (binary_expression "iVar13 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00031e67;" goto statement_identifier ;)) }))) (if_statement "if (do_display != 0) {\n          puVar24 = (undefined1 *)0x31e89;\n          pcVar8 = get_DW_SECT_short_name((uint)local_b4);\n          printf(" %8s",pcVar8);\n        }" if (parenthesized_expression "(do_display != 0)" ( (binary_expression "do_display != 0" identifier != number_literal) )) (compound_statement "{\n          puVar24 = (undefined1 *)0x31e89;\n          pcVar8 = get_DW_SECT_short_name((uint)local_b4);\n          printf(" %8s",pcVar8);\n        }" { (expression_statement "puVar24 = (undefined1 *)0x31e89;" (assignment_expression "puVar24 = (undefined1 *)0x31e89" identifier = (cast_expression "(undefined1 *)0x31e89" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar8 = get_DW_SECT_short_name((uint)local_b4);" (assignment_expression "pcVar8 = get_DW_SECT_short_name((uint)local_b4)" identifier = (call_expression "get_DW_SECT_short_name((uint)local_b4)" identifier (argument_list "((uint)local_b4)" ( (cast_expression "(uint)local_b4" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "printf(" %8s",pcVar8);" (call_expression "printf(" %8s",pcVar8)" identifier (argument_list "(" %8s",pcVar8)" ( (string_literal "" %8s"" " string_content ") , identifier ))) ;) })) (expression_statement "pdVar12 = (dwarf_section *)&pdVar12->compressed_name;" (assignment_expression "pdVar12 = (dwarf_section *)&pdVar12->compressed_name" identifier = (cast_expression "(dwarf_section *)&pdVar12->compressed_name" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pdVar12->compressed_name" & (field_expression "pdVar12->compressed_name" identifier -> field_identifier)))) ;) }) while (parenthesized_expression "((uint)(elf_vma)eVar25 < (uint)local_b8)" ( (binary_expression "(uint)(elf_vma)eVar25 < (uint)local_b8" (cast_expression "(uint)(elf_vma)eVar25" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) < (cast_expression "(uint)local_b8" ( (type_descriptor "uint" type_identifier) ) identifier)) )) ;) (if_statement "if (do_display != 0) goto LAB_0003227a;" if (parenthesized_expression "(do_display != 0)" ( (binary_expression "do_display != 0" identifier != number_literal) )) (goto_statement "goto LAB_0003227a;" goto statement_identifier ;)) })) (if_statement "if (local_bc == (cu_tu_set *)0x0) {\n      return 1;\n    }" if (parenthesized_expression "(local_bc == (cu_tu_set *)0x0)" ( (binary_expression "local_bc == (cu_tu_set *)0x0" identifier == (cast_expression "(cu_tu_set *)0x0" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) }) (else_clause "else {\n    pcVar8 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar8);\n    if (bVar22 == bVar21) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pdVar12 = local_ac._4_4_;\n    if (local_b8 != (undefined1  [4])0x0) {\n      do {\n        ppcVar19 = &pdVar12->compressed_name;\n        if (ppcVar19 < pdVar1) {\n          iVar13 = 4;\nLAB_000321db:\n          eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          eVar25._0_4_ = 0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_000321db;\n        }\n        puVar24 = (undefined1 *)0x321b7;\n        pcVar8 = get_DW_SECT_short_name((uint)(elf_vma)eVar25);\n        printf(" %8s",pcVar8);\n        pdVar12 = (dwarf_section *)ppcVar19;\n      } while (ppcVar14 != ppcVar19);\n    }\n    putchar(10);\n    local_78 = (cu_tu_set *)0x0;\n    if (local_bc != (cu_tu_set *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar8 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar8);\n    if (bVar22 == bVar21) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined1  [4])0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\n  }" else (compound_statement "{\n    pcVar8 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar8);\n    if (bVar22 == bVar21) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pdVar12 = local_ac._4_4_;\n    if (local_b8 != (undefined1  [4])0x0) {\n      do {\n        ppcVar19 = &pdVar12->compressed_name;\n        if (ppcVar19 < pdVar1) {\n          iVar13 = 4;\nLAB_000321db:\n          eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          eVar25._0_4_ = 0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_000321db;\n        }\n        puVar24 = (undefined1 *)0x321b7;\n        pcVar8 = get_DW_SECT_short_name((uint)(elf_vma)eVar25);\n        printf(" %8s",pcVar8);\n        pdVar12 = (dwarf_section *)ppcVar19;\n      } while (ppcVar14 != ppcVar19);\n    }\n    putchar(10);\n    local_78 = (cu_tu_set *)0x0;\n    if (local_bc != (cu_tu_set *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar8 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar8);\n    if (bVar22 == bVar21) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined1  [4])0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;\n  }" { (expression_statement "pcVar8 = (char *)dcgettext(0,"  Offset table\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"  Offset table\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Offset table\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Offset table\n",5)" identifier (argument_list "(0,"  Offset table\n",5)" ( number_literal , (string_literal ""  Offset table\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar8);" (call_expression "printf(pcVar8)" identifier (argument_list "(pcVar8)" ( identifier ))) ;) (if_statement "if (bVar22 == bVar21) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" if (parenthesized_expression "(bVar22 == bVar21)" ( (binary_expression "bVar22 == bVar21" identifier == identifier) )) (compound_statement "{\n      uVar9 = dcgettext(0,"signature",5);\n    }" { (expression_statement "uVar9 = dcgettext(0,"signature",5);" (assignment_expression "uVar9 = dcgettext(0,"signature",5)" identifier = (call_expression "dcgettext(0,"signature",5)" identifier (argument_list "(0,"signature",5)" ( number_literal , (string_literal ""signature"" " string_content ") , number_literal )))) ;) }) (else_clause "else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" else (compound_statement "{\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" { (expression_statement "uVar9 = dcgettext(0,"dwo_id",5);" (assignment_expression "uVar9 = dcgettext(0,"dwo_id",5)" identifier = (call_expression "dcgettext(0,"dwo_id",5)" identifier (argument_list "(0,"dwo_id",5)" ( number_literal , (string_literal ""dwo_id"" " string_content ") , number_literal )))) ;) }))) (expression_statement "printf("  slot  %-16s  ",uVar9);" (call_expression "printf("  slot  %-16s  ",uVar9)" identifier (argument_list "("  slot  %-16s  ",uVar9)" ( (string_literal ""  slot  %-16s  "" " string_content ") , identifier ))) ;) (expression_statement "pdVar12 = local_ac._4_4_;" (assignment_expression "pdVar12 = local_ac._4_4_" identifier = (field_expression "local_ac._4_4_" identifier . field_identifier)) ;) (if_statement "if (local_b8 != (undefined1  [4])0x0) {\n      do {\n        ppcVar19 = &pdVar12->compressed_name;\n        if (ppcVar19 < pdVar1) {\n          iVar13 = 4;\nLAB_000321db:\n          eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          eVar25._0_4_ = 0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_000321db;\n        }\n        puVar24 = (undefined1 *)0x321b7;\n        pcVar8 = get_DW_SECT_short_name((uint)(elf_vma)eVar25);\n        printf(" %8s",pcVar8);\n        pdVar12 = (dwarf_section *)ppcVar19;\n      } while (ppcVar14 != ppcVar19);\n    }" if (parenthesized_expression "(local_b8 != (undefined1  [4])0x0)" ( (binary_expression "local_b8 != (undefined1  [4])0x0" identifier != (cast_expression "(undefined1  [4])0x0" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) number_literal)) )) (compound_statement "{\n      do {\n        ppcVar19 = &pdVar12->compressed_name;\n        if (ppcVar19 < pdVar1) {\n          iVar13 = 4;\nLAB_000321db:\n          eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          eVar25._0_4_ = 0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_000321db;\n        }\n        puVar24 = (undefined1 *)0x321b7;\n        pcVar8 = get_DW_SECT_short_name((uint)(elf_vma)eVar25);\n        printf(" %8s",pcVar8);\n        pdVar12 = (dwarf_section *)ppcVar19;\n      } while (ppcVar14 != ppcVar19);\n    }" { (do_statement "do {\n        ppcVar19 = &pdVar12->compressed_name;\n        if (ppcVar19 < pdVar1) {\n          iVar13 = 4;\nLAB_000321db:\n          eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          eVar25._0_4_ = 0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_000321db;\n        }\n        puVar24 = (undefined1 *)0x321b7;\n        pcVar8 = get_DW_SECT_short_name((uint)(elf_vma)eVar25);\n        printf(" %8s",pcVar8);\n        pdVar12 = (dwarf_section *)ppcVar19;\n      } while (ppcVar14 != ppcVar19);" do (compound_statement "{\n        ppcVar19 = &pdVar12->compressed_name;\n        if (ppcVar19 < pdVar1) {\n          iVar13 = 4;\nLAB_000321db:\n          eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          eVar25._0_4_ = 0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_000321db;\n        }\n        puVar24 = (undefined1 *)0x321b7;\n        pcVar8 = get_DW_SECT_short_name((uint)(elf_vma)eVar25);\n        printf(" %8s",pcVar8);\n        pdVar12 = (dwarf_section *)ppcVar19;\n      }" { (expression_statement "ppcVar19 = &pdVar12->compressed_name;" (assignment_expression "ppcVar19 = &pdVar12->compressed_name" identifier = (pointer_expression "&pdVar12->compressed_name" & (field_expression "pdVar12->compressed_name" identifier -> field_identifier))) ;) (if_statement "if (ppcVar19 < pdVar1) {\n          iVar13 = 4;\nLAB_000321db:\n          eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        }\n        else {\n          eVar25._0_4_ = 0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_000321db;\n        }" if (parenthesized_expression "(ppcVar19 < pdVar1)" ( (binary_expression "ppcVar19 < pdVar1" identifier < identifier) )) (compound_statement "{\n          iVar13 = 4;\nLAB_000321db:\n          eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n        }" { (expression_statement "iVar13 = 4;" (assignment_expression "iVar13 = 4" identifier = number_literal) ;) (labeled_statement "LAB_000321db:\n          eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);" statement_identifier : (expression_statement "eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);" (assignment_expression "eVar25._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13)" (field_expression "eVar25._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)((uchar *)pdVar12,iVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pdVar12,iVar13)" ( (cast_expression "(uchar *)pdVar12" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) }) (else_clause "else {\n          eVar25._0_4_ = 0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_000321db;\n        }" else (compound_statement "{\n          eVar25._0_4_ = 0;\n          if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_000321db;\n        }" { (expression_statement "eVar25._0_4_ = 0;" (assignment_expression "eVar25._0_4_ = 0" (field_expression "eVar25._0_4_" identifier . field_identifier) = number_literal) ;) (if_statement "if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n          goto LAB_000321db;" if (parenthesized_expression "((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))" ( (binary_expression "(pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)" (parenthesized_expression "(pdVar12 < pdVar1)" ( (binary_expression "pdVar12 < pdVar1" identifier < identifier) )) && (parenthesized_expression "(iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)" ( (comma_expression "iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8" (assignment_expression "iVar13 = (int)pdVar1 - (int)pdVar12" identifier = (binary_expression "(int)pdVar1 - (int)pdVar12" (cast_expression "(int)pdVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pdVar12" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar13 - 1U < 8" (binary_expression "iVar13 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_000321db;" goto statement_identifier ;)) }))) (expression_statement "puVar24 = (undefined1 *)0x321b7;" (assignment_expression "puVar24 = (undefined1 *)0x321b7" identifier = (cast_expression "(undefined1 *)0x321b7" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar8 = get_DW_SECT_short_name((uint)(elf_vma)eVar25);" (assignment_expression "pcVar8 = get_DW_SECT_short_name((uint)(elf_vma)eVar25)" identifier = (call_expression "get_DW_SECT_short_name((uint)(elf_vma)eVar25)" identifier (argument_list "((uint)(elf_vma)eVar25)" ( (cast_expression "(uint)(elf_vma)eVar25" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) )))) ;) (expression_statement "printf(" %8s",pcVar8);" (call_expression "printf(" %8s",pcVar8)" identifier (argument_list "(" %8s",pcVar8)" ( (string_literal "" %8s"" " string_content ") , identifier ))) ;) (expression_statement "pdVar12 = (dwarf_section *)ppcVar19;" (assignment_expression "pdVar12 = (dwarf_section *)ppcVar19" identifier = (cast_expression "(dwarf_section *)ppcVar19" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) }) while (parenthesized_expression "(ppcVar14 != ppcVar19)" ( (binary_expression "ppcVar14 != ppcVar19" identifier != identifier) )) ;) })) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) (expression_statement "local_78 = (cu_tu_set *)0x0;" (assignment_expression "local_78 = (cu_tu_set *)0x0" identifier = (cast_expression "(cu_tu_set *)0x0" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (local_bc != (cu_tu_set *)0x0) goto LAB_000319e5;" if (parenthesized_expression "(local_bc != (cu_tu_set *)0x0)" ( (binary_expression "local_bc != (cu_tu_set *)0x0" identifier != (cast_expression "(cu_tu_set *)0x0" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000319e5;" goto statement_identifier ;)) (expression_statement "local_78 = local_bc;" (assignment_expression "local_78 = local_bc" identifier = identifier) ;) (labeled_statement "LAB_00032214:\n    putchar(10);" statement_identifier : (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;)) (expression_statement "pcVar8 = (char *)dcgettext(0,"  Size table\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"  Size table\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Size table\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Size table\n",5)" identifier (argument_list "(0,"  Size table\n",5)" ( number_literal , (string_literal ""  Size table\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar8);" (call_expression "printf(pcVar8)" identifier (argument_list "(pcVar8)" ( identifier ))) ;) (if_statement "if (bVar22 == bVar21) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" if (parenthesized_expression "(bVar22 == bVar21)" ( (binary_expression "bVar22 == bVar21" identifier == identifier) )) (compound_statement "{\n      uVar9 = dcgettext(0,"signature",5);\n    }" { (expression_statement "uVar9 = dcgettext(0,"signature",5);" (assignment_expression "uVar9 = dcgettext(0,"signature",5)" identifier = (call_expression "dcgettext(0,"signature",5)" identifier (argument_list "(0,"signature",5)" ( number_literal , (string_literal ""signature"" " string_content ") , number_literal )))) ;) }) (else_clause "else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" else (compound_statement "{\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" { (expression_statement "uVar9 = dcgettext(0,"dwo_id",5);" (assignment_expression "uVar9 = dcgettext(0,"dwo_id",5)" identifier = (call_expression "dcgettext(0,"dwo_id",5)" identifier (argument_list "(0,"dwo_id",5)" ( number_literal , (string_literal ""dwo_id"" " string_content ") , number_literal )))) ;) }))) (expression_statement "printf("  slot  %-16s  ",uVar9);" (call_expression "printf("  slot  %-16s  ",uVar9)" identifier (argument_list "("  slot  %-16s  ",uVar9)" ( (string_literal ""  slot  %-16s  "" " string_content ") , identifier ))) ;) (if_statement "if (local_b8 != (undefined1  [4])0x0) goto LAB_00031e1e;" if (parenthesized_expression "(local_b8 != (undefined1  [4])0x0)" ( (binary_expression "local_b8 != (undefined1  [4])0x0" identifier != (cast_expression "(undefined1  [4])0x0" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) number_literal)) )) (goto_statement "goto LAB_00031e1e;" goto statement_identifier ;)) (labeled_statement "LAB_0003227a:\n    putchar(10);" statement_identifier : (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;)) (if_statement "if (local_bc == (cu_tu_set *)0x0) goto LAB_000316b0;" if (parenthesized_expression "(local_bc == (cu_tu_set *)0x0)" ( (binary_expression "local_bc == (cu_tu_set *)0x0" identifier == (cast_expression "(cu_tu_set *)0x0" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000316b0;" goto statement_identifier ;)) }))) (expression_statement "local_b4 = (undefined1  [4])0x0;" (assignment_expression "local_b4 = (undefined1  [4])0x0" identifier = (cast_expression "(undefined1  [4])0x0" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) number_literal)) ;) (expression_statement "auVar18 = local_b0;" (assignment_expression "auVar18 = local_b0" identifier = identifier) ;) (do_statement "do {\n    if (pdVar1 < &local_88->name) {\n      signature_high._0_4_ = (char *)0x0;\n      signature_high._4_4_ = 0;\n      signature_low._0_4_ = 0;\n      signature_low._4_4_ = 0;\n    }\n    else {\n      byte_get_64((uchar *)local_88,&signature_high,&signature_low);\n    }\n    if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n      iVar13 = 4;\nLAB_00031f4a:\n      eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n      if ((elf_vma)eVar25 != 0) {\n        if (do_display == 0) {\n          if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031f85:\n            local_b0 = (undefined1  [4])0x0;\n            pdVar12 = (dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98);\n            pdVar11 = local_ac._4_4_;\n            do {\n              local_b0 = (undefined1  [4])((int)local_b0 + 1);\n              if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }\nLAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n            } while ((uint)local_b0 < (uint)local_b8);\n            if (do_display != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)\n          ;\n          pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar10,local_b4,pcVar8);\n          if (local_b8 != (undefined1  [4])0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined1  [4])((int)(uint64_t *)local_b4 + 1);\n    local_88 = (dwarf_section *)&local_88->name;\n    auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;\n  } while ((uint)local_b4 < local_bc);" do (compound_statement "{\n    if (pdVar1 < &local_88->name) {\n      signature_high._0_4_ = (char *)0x0;\n      signature_high._4_4_ = 0;\n      signature_low._0_4_ = 0;\n      signature_low._4_4_ = 0;\n    }\n    else {\n      byte_get_64((uchar *)local_88,&signature_high,&signature_low);\n    }\n    if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n      iVar13 = 4;\nLAB_00031f4a:\n      eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n      if ((elf_vma)eVar25 != 0) {\n        if (do_display == 0) {\n          if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031f85:\n            local_b0 = (undefined1  [4])0x0;\n            pdVar12 = (dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98);\n            pdVar11 = local_ac._4_4_;\n            do {\n              local_b0 = (undefined1  [4])((int)local_b0 + 1);\n              if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }\nLAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n            } while ((uint)local_b0 < (uint)local_b8);\n            if (do_display != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)\n          ;\n          pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar10,local_b4,pcVar8);\n          if (local_b8 != (undefined1  [4])0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined1  [4])((int)(uint64_t *)local_b4 + 1);\n    local_88 = (dwarf_section *)&local_88->name;\n    auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;\n  }" { (if_statement "if (pdVar1 < &local_88->name) {\n      signature_high._0_4_ = (char *)0x0;\n      signature_high._4_4_ = 0;\n      signature_low._0_4_ = 0;\n      signature_low._4_4_ = 0;\n    }\n    else {\n      byte_get_64((uchar *)local_88,&signature_high,&signature_low);\n    }" if (parenthesized_expression "(pdVar1 < &local_88->name)" ( (binary_expression "pdVar1 < &local_88->name" identifier < (pointer_expression "&local_88->name" & (field_expression "local_88->name" identifier -> field_identifier))) )) (compound_statement "{\n      signature_high._0_4_ = (char *)0x0;\n      signature_high._4_4_ = 0;\n      signature_low._0_4_ = 0;\n      signature_low._4_4_ = 0;\n    }" { (expression_statement "signature_high._0_4_ = (char *)0x0;" (assignment_expression "signature_high._0_4_ = (char *)0x0" (field_expression "signature_high._0_4_" identifier . field_identifier) = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "signature_high._4_4_ = 0;" (assignment_expression "signature_high._4_4_ = 0" (field_expression "signature_high._4_4_" identifier . field_identifier) = number_literal) ;) (expression_statement "signature_low._0_4_ = 0;" (assignment_expression "signature_low._0_4_ = 0" (field_expression "signature_low._0_4_" identifier . field_identifier) = number_literal) ;) (expression_statement "signature_low._4_4_ = 0;" (assignment_expression "signature_low._4_4_ = 0" (field_expression "signature_low._4_4_" identifier . field_identifier) = number_literal) ;) }) (else_clause "else {\n      byte_get_64((uchar *)local_88,&signature_high,&signature_low);\n    }" else (compound_statement "{\n      byte_get_64((uchar *)local_88,&signature_high,&signature_low);\n    }" { (expression_statement "byte_get_64((uchar *)local_88,&signature_high,&signature_low);" (call_expression "byte_get_64((uchar *)local_88,&signature_high,&signature_low)" identifier (argument_list "((uchar *)local_88,&signature_high,&signature_low)" ( (cast_expression "(uchar *)local_88" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (pointer_expression "&signature_high" & identifier) , (pointer_expression "&signature_low" & identifier) ))) ;) }))) (if_statement "if (&((dwarf_section *)auVar18)->compressed_name < pdVar1) {\n      iVar13 = 4;\nLAB_00031f4a:\n      eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n      if ((elf_vma)eVar25 != 0) {\n        if (do_display == 0) {\n          if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031f85:\n            local_b0 = (undefined1  [4])0x0;\n            pdVar12 = (dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98);\n            pdVar11 = local_ac._4_4_;\n            do {\n              local_b0 = (undefined1  [4])((int)local_b0 + 1);\n              if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }\nLAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n            } while ((uint)local_b0 < (uint)local_b8);\n            if (do_display != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)\n          ;\n          pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar10,local_b4,pcVar8);\n          if (local_b8 != (undefined1  [4])0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n    goto LAB_00031f4a;" if (parenthesized_expression "(&((dwarf_section *)auVar18)->compressed_name < pdVar1)" ( (binary_expression "&((dwarf_section *)auVar18)->compressed_name < pdVar1" (pointer_expression "&((dwarf_section *)auVar18)->compressed_name" & (field_expression "((dwarf_section *)auVar18)->compressed_name" (parenthesized_expression "((dwarf_section *)auVar18)" ( (cast_expression "(dwarf_section *)auVar18" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier)) < identifier) )) (compound_statement "{\n      iVar13 = 4;\nLAB_00031f4a:\n      eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);\n      if ((elf_vma)eVar25 != 0) {\n        if (do_display == 0) {\n          if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031f85:\n            local_b0 = (undefined1  [4])0x0;\n            pdVar12 = (dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98);\n            pdVar11 = local_ac._4_4_;\n            do {\n              local_b0 = (undefined1  [4])((int)local_b0 + 1);\n              if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }\nLAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n            } while ((uint)local_b0 < (uint)local_b8);\n            if (do_display != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)\n          ;\n          pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar10,local_b4,pcVar8);\n          if (local_b8 != (undefined1  [4])0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }" { (expression_statement "iVar13 = 4;" (assignment_expression "iVar13 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00031f4a:\n      eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);" statement_identifier : (expression_statement "eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13);" (assignment_expression "eVar25._0_4_ = (*byte_get)((uchar *)auVar18,iVar13)" (field_expression "eVar25._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)((uchar *)auVar18,iVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)auVar18,iVar13)" ( (cast_expression "(uchar *)auVar18" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) (if_statement "if ((elf_vma)eVar25 != 0) {\n        if (do_display == 0) {\n          if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031f85:\n            local_b0 = (undefined1  [4])0x0;\n            pdVar12 = (dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98);\n            pdVar11 = local_ac._4_4_;\n            do {\n              local_b0 = (undefined1  [4])((int)local_b0 + 1);\n              if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }\nLAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n            } while ((uint)local_b0 < (uint)local_b8);\n            if (do_display != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)\n          ;\n          pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar10,local_b4,pcVar8);\n          if (local_b8 != (undefined1  [4])0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }" if (parenthesized_expression "((elf_vma)eVar25 != 0)" ( (binary_expression "(elf_vma)eVar25 != 0" (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier) != number_literal) )) (compound_statement "{\n        if (do_display == 0) {\n          if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031f85:\n            local_b0 = (undefined1  [4])0x0;\n            pdVar12 = (dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98);\n            pdVar11 = local_ac._4_4_;\n            do {\n              local_b0 = (undefined1  [4])((int)local_b0 + 1);\n              if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }\nLAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n            } while ((uint)local_b0 < (uint)local_b8);\n            if (do_display != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)\n          ;\n          pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar10,local_b4,pcVar8);\n          if (local_b8 != (undefined1  [4])0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }" { (if_statement "if (do_display == 0) {\n          if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031f85:\n            local_b0 = (undefined1  [4])0x0;\n            pdVar12 = (dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98);\n            pdVar11 = local_ac._4_4_;\n            do {\n              local_b0 = (undefined1  [4])((int)local_b0 + 1);\n              if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }\nLAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n            } while ((uint)local_b0 < (uint)local_b8);\n            if (do_display != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)\n          ;\n          pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar10,local_b4,pcVar8);\n          if (local_b8 != (undefined1  [4])0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }" if (parenthesized_expression "(do_display == 0)" ( (binary_expression "do_display == 0" identifier == number_literal) )) (compound_statement "{\n          if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031f85:\n            local_b0 = (undefined1  [4])0x0;\n            pdVar12 = (dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98);\n            pdVar11 = local_ac._4_4_;\n            do {\n              local_b0 = (undefined1  [4])((int)local_b0 + 1);\n              if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }\nLAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n            } while ((uint)local_b0 < (uint)local_b8);\n            if (do_display != 0) goto LAB_0003201d;\n          }\n        }" { (if_statement "if (local_b8 != (undefined1  [4])0x0) {\nLAB_00031f85:\n            local_b0 = (undefined1  [4])0x0;\n            pdVar12 = (dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98);\n            pdVar11 = local_ac._4_4_;\n            do {\n              local_b0 = (undefined1  [4])((int)local_b0 + 1);\n              if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }\nLAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n            } while ((uint)local_b0 < (uint)local_b8);\n            if (do_display != 0) goto LAB_0003201d;\n          }" if (parenthesized_expression "(local_b8 != (undefined1  [4])0x0)" ( (binary_expression "local_b8 != (undefined1  [4])0x0" identifier != (cast_expression "(undefined1  [4])0x0" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) number_literal)) )) (compound_statement "{\nLAB_00031f85:\n            local_b0 = (undefined1  [4])0x0;\n            pdVar12 = (dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98);\n            pdVar11 = local_ac._4_4_;\n            do {\n              local_b0 = (undefined1  [4])((int)local_b0 + 1);\n              if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }\nLAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n            } while ((uint)local_b0 < (uint)local_b8);\n            if (do_display != 0) goto LAB_0003201d;\n          }" { (labeled_statement "LAB_00031f85:\n            local_b0 = (undefined1  [4])0x0;" statement_identifier : (expression_statement "local_b0 = (undefined1  [4])0x0;" (assignment_expression "local_b0 = (undefined1  [4])0x0" identifier = (cast_expression "(undefined1  [4])0x0" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) number_literal)) ;)) (expression_statement "pdVar12 = (dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98);" (assignment_expression "pdVar12 = (dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98)" identifier = (cast_expression "(dwarf_section *)\n                      ((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98)" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98)" ( (binary_expression "(int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4 + uVar4 * (int)(elf_vma)local_98" (binary_expression "(int)ppcVar14 +\n                      ((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4" (cast_expression "(int)ppcVar14" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((int)(elf_vma)eVar25 + 0x3fffffff) * uVar4" (parenthesized_expression "((int)(elf_vma)eVar25 + 0x3fffffff)" ( (binary_expression "(int)(elf_vma)eVar25 + 0x3fffffff" (cast_expression "(int)(elf_vma)eVar25" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) + number_literal) )) * identifier)) + (binary_expression "uVar4 * (int)(elf_vma)local_98" identifier * (cast_expression "(int)(elf_vma)local_98" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)local_98" ( (type_descriptor "elf_vma" type_identifier) ) identifier)))) )))) ;) (expression_statement "pdVar11 = local_ac._4_4_;" (assignment_expression "pdVar11 = local_ac._4_4_" identifier = (field_expression "local_ac._4_4_" identifier . field_identifier)) ;) (do_statement "do {\n              local_b0 = (undefined1  [4])((int)local_b0 + 1);\n              if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }\nLAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n            } while ((uint)local_b0 < (uint)local_b8);" do (compound_statement "{\n              local_b0 = (undefined1  [4])((int)local_b0 + 1);\n              if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }\nLAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;\n              pdVar12 = (dwarf_section *)&pdVar12->compressed_name;\n            }" { (expression_statement "local_b0 = (undefined1  [4])((int)local_b0 + 1);" (assignment_expression "local_b0 = (undefined1  [4])((int)local_b0 + 1)" identifier = (call_expression "(undefined1  [4])((int)local_b0 + 1)" (parenthesized_expression "(undefined1  [4])" ( (subscript_expression "undefined1  [4]" identifier [ number_literal ]) )) (argument_list "((int)local_b0 + 1)" ( (binary_expression "(int)local_b0 + 1" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (if_statement "if (&pdVar12->compressed_name < pdVar1) {\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }\n              else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }" if (parenthesized_expression "(&pdVar12->compressed_name < pdVar1)" ( (binary_expression "&pdVar12->compressed_name < pdVar1" (pointer_expression "&pdVar12->compressed_name" & (field_expression "pdVar12->compressed_name" identifier -> field_identifier)) < identifier) )) (compound_statement "{\n                iVar13 = 4;\nLAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);\n              }" { (expression_statement "iVar13 = 4;" (assignment_expression "iVar13 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00032035:\n                eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);" statement_identifier : (expression_statement "eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13);" (assignment_expression "eVar26._0_4_ = (*byte_get)((uchar *)pdVar12,iVar13)" (field_expression "eVar26._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)((uchar *)pdVar12,iVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pdVar12,iVar13)" ( (cast_expression "(uchar *)pdVar12" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) }) (else_clause "else {\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }" else (compound_statement "{\n                eVar26._0_4_ = 0;\n                if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;\n              }" { (expression_statement "eVar26._0_4_ = 0;" (assignment_expression "eVar26._0_4_ = 0" (field_expression "eVar26._0_4_" identifier . field_identifier) = number_literal) ;) (if_statement "if ((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))\n                goto LAB_00032035;" if (parenthesized_expression "((pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8))" ( (binary_expression "(pdVar12 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)" (parenthesized_expression "(pdVar12 < pdVar1)" ( (binary_expression "pdVar12 < pdVar1" identifier < identifier) )) && (parenthesized_expression "(iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8)" ( (comma_expression "iVar13 = (int)pdVar1 - (int)pdVar12, iVar13 - 1U < 8" (assignment_expression "iVar13 = (int)pdVar1 - (int)pdVar12" identifier = (binary_expression "(int)pdVar1 - (int)pdVar12" (cast_expression "(int)pdVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pdVar12" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar13 - 1U < 8" (binary_expression "iVar13 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00032035;" goto statement_identifier ;)) }))) (if_statement "if (do_display == 0) {\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }\n              else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }" if (parenthesized_expression "(do_display == 0)" ( (binary_expression "do_display == 0" identifier == number_literal) )) (compound_statement "{\n                if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }\n                    /* WARNING: Store size is inaccurate */\n                *(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;\n              }" { (if_statement "if (&pdVar11->compressed_name < pdVar1) {\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }" if (parenthesized_expression "(&pdVar11->compressed_name < pdVar1)" ( (binary_expression "&pdVar11->compressed_name < pdVar1" (pointer_expression "&pdVar11->compressed_name" & (field_expression "pdVar11->compressed_name" identifier -> field_identifier)) < identifier) )) (compound_statement "{\n                  iVar13 = 4;\nLAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);\n                  if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }\n                }" { (expression_statement "iVar13 = 4;" (assignment_expression "iVar13 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00032055:\n                  eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);" statement_identifier : (expression_statement "eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13);" (assignment_expression "eVar27._0_4_ = (*byte_get)((uchar *)pdVar11,iVar13)" (field_expression "eVar27._0_4_" identifier . field_identifier) = (call_expression "(*byte_get)((uchar *)pdVar11,iVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pdVar11,iVar13)" ( (cast_expression "(uchar *)pdVar11" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) (if_statement "if (7 < (uint)(elf_vma)eVar27) {\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }" if (parenthesized_expression "(7 < (uint)(elf_vma)eVar27)" ( (binary_expression "7 < (uint)(elf_vma)eVar27" number_literal < (cast_expression "(uint)(elf_vma)eVar27" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(elf_vma)eVar27" ( (type_descriptor "elf_vma" type_identifier) ) identifier))) )) (compound_statement "{\n                    pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(pcVar8,(undefined4)(elf_vma)eVar27);\n                    goto LAB_00032001;\n                  }" { (expression_statement "pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5)" identifier (argument_list "(0,"Overlarge Dwarf section index detected: %u\n",5)" ( number_literal , (string_literal ""Overlarge Dwarf section index detected: %u\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar8,(undefined4)(elf_vma)eVar27);" (call_expression "warn(pcVar8,(undefined4)(elf_vma)eVar27)" identifier (argument_list "(pcVar8,(undefined4)(elf_vma)eVar27)" ( identifier , (cast_expression "(undefined4)(elf_vma)eVar27" ( (type_descriptor "undefined4" type_identifier) ) (cast_expression "(elf_vma)eVar27" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ))) ;) (goto_statement "goto LAB_00032001;" goto statement_identifier ;) })) }) (else_clause "else {\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }" else (compound_statement "{\n                  if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;\n                  eVar27._0_4_ = 0;\n                }" { (if_statement "if ((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))\n                  goto LAB_00032055;" if (parenthesized_expression "((pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8))" ( (binary_expression "(pdVar11 < pdVar1) && (iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)" (parenthesized_expression "(pdVar11 < pdVar1)" ( (binary_expression "pdVar11 < pdVar1" identifier < identifier) )) && (parenthesized_expression "(iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8)" ( (comma_expression "iVar13 = (int)pdVar1 - (int)pdVar11, iVar13 - 1U < 8" (assignment_expression "iVar13 = (int)pdVar1 - (int)pdVar11" identifier = (binary_expression "(int)pdVar1 - (int)pdVar11" (cast_expression "(int)pdVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pdVar11" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar13 - 1U < 8" (binary_expression "iVar13 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00032055;" goto statement_identifier ;)) (expression_statement "eVar27._0_4_ = 0;" (assignment_expression "eVar27._0_4_ = 0" (field_expression "eVar27._0_4_" identifier . field_identifier) = number_literal) ;) }))) comment (expression_statement "*(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26;" (assignment_expression "*(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28) = (elf_vma)eVar26" (pointer_expression "*(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28)" * (cast_expression "(elf_vma *)\n                 ((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28)" ( (type_descriptor "elf_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28)" ( (binary_expression "(int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4 + -0x28" (binary_expression "(int)local_78[(int)(elf_vma)eVar25].section_offsets +\n                 (int)(elf_vma)eVar27 * 4" (cast_expression "(int)local_78[(int)(elf_vma)eVar25].section_offsets" ( (type_descriptor "int" primitive_type) ) (field_expression "local_78[(int)(elf_vma)eVar25].section_offsets" (subscript_expression "local_78[(int)(elf_vma)eVar25]" identifier [ (cast_expression "(int)(elf_vma)eVar25" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)eVar25" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ]) . field_identifier)) + (binary_expression "(int)(elf_vma)eVar27 * 4" (cast_expression "(int)(elf_vma)eVar27" ( (type_descriptor "int" primitive_type) ) (cast_expression "(elf_vma)eVar27" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) * number_literal)) + number_literal) )))) = (cast_expression "(elf_vma)eVar26" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ;) }) (else_clause "else {\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }" else (compound_statement "{\n                printf(" %8d",(undefined4)(elf_vma)eVar26);\n              }" { (expression_statement "printf(" %8d",(undefined4)(elf_vma)eVar26);" (call_expression "printf(" %8d",(undefined4)(elf_vma)eVar26)" identifier (argument_list "(" %8d",(undefined4)(elf_vma)eVar26)" ( (string_literal "" %8d"" " string_content ") , (cast_expression "(undefined4)(elf_vma)eVar26" ( (type_descriptor "undefined4" type_identifier) ) (cast_expression "(elf_vma)eVar26" ( (type_descriptor "elf_vma" type_identifier) ) identifier)) ))) ;) }))) (labeled_statement "LAB_00032001:\n              pdVar11 = (dwarf_section *)&pdVar11->compressed_name;" statement_identifier : (expression_statement "pdVar11 = (dwarf_section *)&pdVar11->compressed_name;" (assignment_expression "pdVar11 = (dwarf_section *)&pdVar11->compressed_name" identifier = (cast_expression "(dwarf_section *)&pdVar11->compressed_name" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pdVar11->compressed_name" & (field_expression "pdVar11->compressed_name" identifier -> field_identifier)))) ;)) (expression_statement "pdVar12 = (dwarf_section *)&pdVar12->compressed_name;" (assignment_expression "pdVar12 = (dwarf_section *)&pdVar12->compressed_name" identifier = (cast_expression "(dwarf_section *)&pdVar12->compressed_name" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pdVar12->compressed_name" & (field_expression "pdVar12->compressed_name" identifier -> field_identifier)))) ;) }) while (parenthesized_expression "((uint)local_b0 < (uint)local_b8)" ( (binary_expression "(uint)local_b0 < (uint)local_b8" (cast_expression "(uint)local_b0" ( (type_descriptor "uint" type_identifier) ) identifier) < (cast_expression "(uint)local_b8" ( (type_descriptor "uint" type_identifier) ) identifier)) )) ;) (if_statement "if (do_display != 0) goto LAB_0003201d;" if (parenthesized_expression "(do_display != 0)" ( (binary_expression "do_display != 0" identifier != number_literal) )) (goto_statement "goto LAB_0003201d;" goto statement_identifier ;)) })) }) (else_clause "else {\n          pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)\n          ;\n          pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar10,local_b4,pcVar8);\n          if (local_b8 != (undefined1  [4])0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }" else (compound_statement "{\n          pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)\n          ;\n          pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar10,local_b4,pcVar8);\n          if (local_b8 != (undefined1  [4])0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }" { (expression_statement "pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)\n          ;" (assignment_expression "pcVar8 = dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)" identifier = (call_expression "dwarf_vmatoa64(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)" identifier (argument_list "(CONCAT44(signature_low._4_4_,(int)signature_low),\n                                  CONCAT44(puVar24,buf),(char *)signature_high,signature_high._4_4_)" ( (call_expression "CONCAT44(signature_low._4_4_,(int)signature_low)" identifier (argument_list "(signature_low._4_4_,(int)signature_low)" ( (field_expression "signature_low._4_4_" identifier . field_identifier) , (cast_expression "(int)signature_low" ( (type_descriptor "int" primitive_type) ) identifier) ))) , (call_expression "CONCAT44(puVar24,buf)" identifier (argument_list "(puVar24,buf)" ( identifier , identifier ))) , (cast_expression "(char *)signature_high" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (field_expression "signature_high._4_4_" identifier . field_identifier) )))) ;) (expression_statement "pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5);" (assignment_expression "pcVar10 = (char *)dcgettext(0,"  [%3d] 0x%s",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [%3d] 0x%s",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [%3d] 0x%s",5)" identifier (argument_list "(0,"  [%3d] 0x%s",5)" ( number_literal , (string_literal ""  [%3d] 0x%s"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar10,local_b4,pcVar8);" (call_expression "printf(pcVar10,local_b4,pcVar8)" identifier (argument_list "(pcVar10,local_b4,pcVar8)" ( identifier , identifier , identifier ))) ;) (if_statement "if (local_b8 != (undefined1  [4])0x0) goto LAB_00031f85;" if (parenthesized_expression "(local_b8 != (undefined1  [4])0x0)" ( (binary_expression "local_b8 != (undefined1  [4])0x0" identifier != (cast_expression "(undefined1  [4])0x0" ( (type_descriptor "undefined1  [4]" type_identifier (abstract_array_declarator "[4]" [ number_literal ])) ) number_literal)) )) (goto_statement "goto LAB_00031f85;" goto statement_identifier ;)) (labeled_statement "LAB_0003201d:\n          putchar(10);" statement_identifier : (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;)) }))) })) }) (else_clause "else if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n    goto LAB_00031f4a;" else (if_statement "if (((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))\n    goto LAB_00031f4a;" if (parenthesized_expression "(((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8))" ( (binary_expression "((uint)auVar18 < pdVar1) && (iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8)" (parenthesized_expression "((uint)auVar18 < pdVar1)" ( (binary_expression "(uint)auVar18 < pdVar1" (cast_expression "(uint)auVar18" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) )) && (parenthesized_expression "(iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8)" ( (comma_expression "iVar13 = (int)pdVar1 - (int)auVar18, iVar13 - 1U < 8" (assignment_expression "iVar13 = (int)pdVar1 - (int)auVar18" identifier = (binary_expression "(int)pdVar1 - (int)auVar18" (cast_expression "(int)pdVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)auVar18" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar13 - 1U < 8" (binary_expression "iVar13 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00031f4a;" goto statement_identifier ;)))) (expression_statement "local_b4 = (undefined1  [4])((int)(uint64_t *)local_b4 + 1);" (assignment_expression "local_b4 = (undefined1  [4])((int)(uint64_t *)local_b4 + 1)" identifier = (call_expression "(undefined1  [4])((int)(uint64_t *)local_b4 + 1)" (parenthesized_expression "(undefined1  [4])" ( (subscript_expression "undefined1  [4]" identifier [ number_literal ]) )) (argument_list "((int)(uint64_t *)local_b4 + 1)" ( (binary_expression "(int)(uint64_t *)local_b4 + 1" (cast_expression "(int)(uint64_t *)local_b4" ( (type_descriptor "int" primitive_type) ) (cast_expression "(uint64_t *)local_b4" ( (type_descriptor "uint64_t *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) ;) (expression_statement "local_88 = (dwarf_section *)&local_88->name;" (assignment_expression "local_88 = (dwarf_section *)&local_88->name" identifier = (cast_expression "(dwarf_section *)&local_88->name" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_88->name" & (field_expression "local_88->name" identifier -> field_identifier)))) ;) (expression_statement "auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name;" (assignment_expression "auVar18 = (undefined1  [4])&((dwarf_section *)auVar18)->compressed_name" identifier = (binary_expression "(undefined1  [4])&((dwarf_section *)auVar18)->compressed_name" (parenthesized_expression "(undefined1  [4])" ( (subscript_expression "undefined1  [4]" identifier [ number_literal ]) )) & (field_expression "((dwarf_section *)auVar18)->compressed_name" (parenthesized_expression "((dwarf_section *)auVar18)" ( (cast_expression "(dwarf_section *)auVar18" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier))) ;) }) while (parenthesized_expression "((uint)local_b4 < local_bc)" ( (binary_expression "(uint)local_b4 < local_bc" (cast_expression "(uint)local_b4" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) )) ;) (labeled_statement "LAB_000316a3:\n  if (do_display == 0) {\n    return 1;\n  }" statement_identifier : (if_statement "if (do_display == 0) {\n    return 1;\n  }" if (parenthesized_expression "(do_display == 0)" ( (binary_expression "do_display == 0" identifier == number_literal) )) (compound_statement "{\n    return 1;\n  }" { (return_statement "return 1;" return number_literal ;) }))) (labeled_statement "LAB_000316b0:\n  putchar(10);" statement_identifier : (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;)) (return_statement "return 1;" return number_literal ;) })))
(translation_unit "undefined4 __regparm3 FUN_00031280(int param_1,int param_2)\n\n{\n  byte *pbVar1;\n  uint uVar2;\n  undefined4 *puVar3;\n  undefined4 *puVar4;\n  byte *pbVar5;\n  uint uVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 uVar9;\n  byte *extraout_ECX;\n  int iVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  uint uVar13;\n  byte *pbVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  int *piVar19;\n  undefined4 *local_bc;\n  undefined4 *local_b8;\n  undefined4 *local_b4;\n  byte *local_b0;\n  uint local_ac;\n  byte *local_a8;\n  undefined4 *local_a4;\n  uint local_98;\n  undefined4 *local_8c;\n  byte *local_88;\n  undefined4 *local_78;\n  int local_6c;\n  int local_68;\n  int local_64;\n  int local_60;\n  undefined1 local_5c [72];\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x31289;\n  pbVar14 = *(byte **)(param_1 + 0x10);\n  puVar3 = *(undefined4 **)(param_1 + 0x1c);\n  if (pbVar14 == (byte *)0x0) {\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is empty\n";\n  }\n  else {\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }\nLAB_0003156a:\n  local_bc = (undefined4 *)0x5;\n  uVar9 = dcgettext(0,pcVar7,5);\nLAB_000314f3:\n  warn(uVar9,pbVar14,local_bc);\n  return 0;\nLAB_0003165a:\n  if (pbVar1 < local_88 + 8) {\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }\n  piVar19 = &local_64;\n  FUN_000490b0(local_88,&local_6c,piVar19);\n  if ((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)) {\n    iVar8 = 4;\n    if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }\n    if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }\n    if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }\nLAB_0003168c:\n  local_b8 = (undefined4 *)((int)local_b8 + 1);\n  local_88 = local_88 + 8;\n  local_b0 = local_b0 + 4;\n  if (local_bc <= local_b8) goto LAB_000316a3;\n  goto LAB_0003165a;\nLAB_000317d8:\n  if (param_2 == 0) {\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }\n  else {\n    putchar(10);\n  }\n  goto LAB_0003168c;\n  while( true ) {\n    iVar8 = iVar8 + -1;\n    bVar16 = *pbVar14 < *pbVar15;\n    bVar17 = *pbVar14 == *pbVar15;\n    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;\n    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n    if (!bVar17) break;\ncode_r0x00031991:\n    if (iVar8 == 0) break;\n  }\n  bVar17 = !bVar16 && !bVar17;\n  if (param_2 == 0) {\n    if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }\n    if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }\n  }\n  else {\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }\n  local_b4 = (undefined4 *)0x0;\n  pbVar14 = local_b0;\n  do {\n    if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }\n    if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined4 *)((int)local_b4 + 1);\n    local_88 = local_88 + 8;\n    pbVar14 = pbVar14 + 4;\n  } while (local_b4 < local_bc);\nLAB_000316a3:\n  if (param_2 == 0) {\n    return 1;\n  }\nLAB_000316b0:\n  putchar(10);\n  return 1;\n}\n\n" (function_definition "undefined4 __regparm3 FUN_00031280(int param_1,int param_2)\n\n{\n  byte *pbVar1;\n  uint uVar2;\n  undefined4 *puVar3;\n  undefined4 *puVar4;\n  byte *pbVar5;\n  uint uVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 uVar9;\n  byte *extraout_ECX;\n  int iVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  uint uVar13;\n  byte *pbVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  int *piVar19;\n  undefined4 *local_bc;\n  undefined4 *local_b8;\n  undefined4 *local_b4;\n  byte *local_b0;\n  uint local_ac;\n  byte *local_a8;\n  undefined4 *local_a4;\n  uint local_98;\n  undefined4 *local_8c;\n  byte *local_88;\n  undefined4 *local_78;\n  int local_6c;\n  int local_68;\n  int local_64;\n  int local_60;\n  undefined1 local_5c [72];\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x31289;\n  pbVar14 = *(byte **)(param_1 + 0x10);\n  puVar3 = *(undefined4 **)(param_1 + 0x1c);\n  if (pbVar14 == (byte *)0x0) {\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is empty\n";\n  }\n  else {\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }\nLAB_0003156a:\n  local_bc = (undefined4 *)0x5;\n  uVar9 = dcgettext(0,pcVar7,5);\nLAB_000314f3:\n  warn(uVar9,pbVar14,local_bc);\n  return 0;\nLAB_0003165a:\n  if (pbVar1 < local_88 + 8) {\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }\n  piVar19 = &local_64;\n  FUN_000490b0(local_88,&local_6c,piVar19);\n  if ((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)) {\n    iVar8 = 4;\n    if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }\n    if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }\n    if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }\nLAB_0003168c:\n  local_b8 = (undefined4 *)((int)local_b8 + 1);\n  local_88 = local_88 + 8;\n  local_b0 = local_b0 + 4;\n  if (local_bc <= local_b8) goto LAB_000316a3;\n  goto LAB_0003165a;\nLAB_000317d8:\n  if (param_2 == 0) {\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }\n  else {\n    putchar(10);\n  }\n  goto LAB_0003168c;\n  while( true ) {\n    iVar8 = iVar8 + -1;\n    bVar16 = *pbVar14 < *pbVar15;\n    bVar17 = *pbVar14 == *pbVar15;\n    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;\n    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n    if (!bVar17) break;\ncode_r0x00031991:\n    if (iVar8 == 0) break;\n  }\n  bVar17 = !bVar16 && !bVar17;\n  if (param_2 == 0) {\n    if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }\n    if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }\n  }\n  else {\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }\n  local_b4 = (undefined4 *)0x0;\n  pbVar14 = local_b0;\n  do {\n    if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }\n    if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined4 *)((int)local_b4 + 1);\n    local_88 = local_88 + 8;\n    pbVar14 = pbVar14 + 4;\n  } while (local_b4 < local_bc);\nLAB_000316a3:\n  if (param_2 == 0) {\n    return 1;\n  }\nLAB_000316b0:\n  putchar(10);\n  return 1;\n}" type_identifier (ERROR "__regparm3" identifier) (function_declarator "FUN_00031280(int param_1,int param_2)" identifier (parameter_list "(int param_1,int param_2)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "int param_2" primitive_type identifier) ))) (compound_statement "{\n  byte *pbVar1;\n  uint uVar2;\n  undefined4 *puVar3;\n  undefined4 *puVar4;\n  byte *pbVar5;\n  uint uVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 uVar9;\n  byte *extraout_ECX;\n  int iVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  uint uVar13;\n  byte *pbVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  int *piVar19;\n  undefined4 *local_bc;\n  undefined4 *local_b8;\n  undefined4 *local_b4;\n  byte *local_b0;\n  uint local_ac;\n  byte *local_a8;\n  undefined4 *local_a4;\n  uint local_98;\n  undefined4 *local_8c;\n  byte *local_88;\n  undefined4 *local_78;\n  int local_6c;\n  int local_68;\n  int local_64;\n  int local_60;\n  undefined1 local_5c [72];\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x31289;\n  pbVar14 = *(byte **)(param_1 + 0x10);\n  puVar3 = *(undefined4 **)(param_1 + 0x1c);\n  if (pbVar14 == (byte *)0x0) {\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is empty\n";\n  }\n  else {\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }\nLAB_0003156a:\n  local_bc = (undefined4 *)0x5;\n  uVar9 = dcgettext(0,pcVar7,5);\nLAB_000314f3:\n  warn(uVar9,pbVar14,local_bc);\n  return 0;\nLAB_0003165a:\n  if (pbVar1 < local_88 + 8) {\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }\n  piVar19 = &local_64;\n  FUN_000490b0(local_88,&local_6c,piVar19);\n  if ((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)) {\n    iVar8 = 4;\n    if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }\n    if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }\n    if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }\nLAB_0003168c:\n  local_b8 = (undefined4 *)((int)local_b8 + 1);\n  local_88 = local_88 + 8;\n  local_b0 = local_b0 + 4;\n  if (local_bc <= local_b8) goto LAB_000316a3;\n  goto LAB_0003165a;\nLAB_000317d8:\n  if (param_2 == 0) {\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }\n  else {\n    putchar(10);\n  }\n  goto LAB_0003168c;\n  while( true ) {\n    iVar8 = iVar8 + -1;\n    bVar16 = *pbVar14 < *pbVar15;\n    bVar17 = *pbVar14 == *pbVar15;\n    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;\n    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n    if (!bVar17) break;\ncode_r0x00031991:\n    if (iVar8 == 0) break;\n  }\n  bVar17 = !bVar16 && !bVar17;\n  if (param_2 == 0) {\n    if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }\n    if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }\n  }\n  else {\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }\n  local_b4 = (undefined4 *)0x0;\n  pbVar14 = local_b0;\n  do {\n    if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }\n    if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined4 *)((int)local_b4 + 1);\n    local_88 = local_88 + 8;\n    pbVar14 = pbVar14 + 4;\n  } while (local_b4 < local_bc);\nLAB_000316a3:\n  if (param_2 == 0) {\n    return 1;\n  }\nLAB_000316b0:\n  putchar(10);\n  return 1;\n}" { (declaration "byte *pbVar1;" type_identifier (pointer_declarator "*pbVar1" * identifier) ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "undefined4 *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "undefined4 *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "byte *pbVar5;" type_identifier (pointer_declarator "*pbVar5" * identifier) ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "undefined4 uVar9;" type_identifier identifier ;) (declaration "byte *extraout_ECX;" type_identifier (pointer_declarator "*extraout_ECX" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "byte *pbVar11;" type_identifier (pointer_declarator "*pbVar11" * identifier) ;) (declaration "byte *pbVar12;" type_identifier (pointer_declarator "*pbVar12" * identifier) ;) (declaration "uint uVar13;" type_identifier identifier ;) (declaration "byte *pbVar14;" type_identifier (pointer_declarator "*pbVar14" * identifier) ;) (declaration "byte *pbVar15;" type_identifier (pointer_declarator "*pbVar15" * identifier) ;) (declaration "bool bVar16;" primitive_type identifier ;) (declaration "bool bVar17;" primitive_type identifier ;) (declaration "byte bVar18;" type_identifier identifier ;) (declaration "int *piVar19;" primitive_type (pointer_declarator "*piVar19" * identifier) ;) (declaration "undefined4 *local_bc;" type_identifier (pointer_declarator "*local_bc" * identifier) ;) (declaration "undefined4 *local_b8;" type_identifier (pointer_declarator "*local_b8" * identifier) ;) (declaration "undefined4 *local_b4;" type_identifier (pointer_declarator "*local_b4" * identifier) ;) (declaration "byte *local_b0;" type_identifier (pointer_declarator "*local_b0" * identifier) ;) (declaration "uint local_ac;" type_identifier identifier ;) (declaration "byte *local_a8;" type_identifier (pointer_declarator "*local_a8" * identifier) ;) (declaration "undefined4 *local_a4;" type_identifier (pointer_declarator "*local_a4" * identifier) ;) (declaration "uint local_98;" type_identifier identifier ;) (declaration "undefined4 *local_8c;" type_identifier (pointer_declarator "*local_8c" * identifier) ;) (declaration "byte *local_88;" type_identifier (pointer_declarator "*local_88" * identifier) ;) (declaration "undefined4 *local_78;" type_identifier (pointer_declarator "*local_78" * identifier) ;) (declaration "int local_6c;" primitive_type identifier ;) (declaration "int local_68;" primitive_type identifier ;) (declaration "int local_64;" primitive_type identifier ;) (declaration "int local_60;" primitive_type identifier ;) (declaration "undefined1 local_5c [72];" type_identifier (array_declarator "local_5c [72]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "bVar18 = 0;" (assignment_expression "bVar18 = 0" identifier = number_literal) ;) (expression_statement "uStack_14 = 0x31289;" (assignment_expression "uStack_14 = 0x31289" identifier = number_literal) ;) (expression_statement "pbVar14 = *(byte **)(param_1 + 0x10);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 0x10)" identifier = (pointer_expression "*(byte **)(param_1 + 0x10)" * (cast_expression "(byte **)(param_1 + 0x10)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "puVar3 = *(undefined4 **)(param_1 + 0x1c);" (assignment_expression "puVar3 = *(undefined4 **)(param_1 + 0x1c)" identifier = (pointer_expression "*(undefined4 **)(param_1 + 0x1c)" * (cast_expression "(undefined4 **)(param_1 + 0x1c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) ))))) ;) (if_statement "if (pbVar14 == (byte *)0x0) {\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is empty\n";\n  }\n  else {\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }" if (parenthesized_expression "(pbVar14 == (byte *)0x0)" ( (binary_expression "pbVar14 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is empty\n";\n  }" { (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" identifier = (pointer_expression "*(byte **)(param_1 + 8)" * (cast_expression "(byte **)(param_1 + 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "pcVar7 = "Section %s is empty\n";" (assignment_expression "pcVar7 = "Section %s is empty\n"" identifier = (string_literal ""Section %s is empty\n"" " string_content escape_sequence ")) ;) }) (else_clause "else {\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }" else (compound_statement "{\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }" { (if_statement "if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3))" ( (binary_expression "*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)" (binary_expression "*(int *)(param_1 + 0x20) != 0" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) != number_literal) || (binary_expression "(uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)" (binary_expression "(uint)-*(int *)(param_1 + 0x20)" (parenthesized_expression "(uint)" ( identifier )) - (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) < (call_expression "(uint)((undefined4 *)0x17 < puVar3)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((undefined4 *)0x17 < puVar3)" ( (binary_expression "(undefined4 *)0x17 < puVar3" (cast_expression "(undefined4 *)0x17" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < identifier) ))))) )) (compound_statement "{\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }" { (expression_statement "local_b0 = pbVar14 + 8;" (assignment_expression "local_b0 = pbVar14 + 8" identifier = (binary_expression "pbVar14 + 8" identifier + number_literal)) ;) (expression_statement "pbVar1 = pbVar14 + (int)puVar3;" (assignment_expression "pbVar1 = pbVar14 + (int)puVar3" identifier = (binary_expression "pbVar14 + (int)puVar3" identifier + (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "pbVar5 = pbVar14 + 4;" (assignment_expression "pbVar5 = pbVar14 + 4" identifier = (binary_expression "pbVar14 + 4" identifier + number_literal)) ;) (if_statement "if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" if (parenthesized_expression "(pbVar5 < pbVar1)" ( (binary_expression "pbVar5 < pbVar1" identifier < identifier) )) (compound_statement "{\n        puVar4 = (undefined4 *)0x4;\n      }" { (expression_statement "puVar4 = (undefined4 *)0x4;" (assignment_expression "puVar4 = (undefined4 *)0x4" identifier = (cast_expression "(undefined4 *)0x4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" else (if_statement "if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" if (parenthesized_expression "((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U))" ( (binary_expression "(pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)" (parenthesized_expression "(pbVar1 <= pbVar14)" ( (binary_expression "pbVar1 <= pbVar14" identifier <= identifier) )) || (parenthesized_expression "(puVar4 = puVar3, 7 < (int)puVar3 - 1U)" ( (comma_expression "puVar4 = puVar3, 7 < (int)puVar3 - 1U" (assignment_expression "puVar4 = puVar3" identifier = identifier) , (binary_expression "7 < (int)puVar3 - 1U" number_literal < (binary_expression "(int)puVar3 - 1U" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal))) ))) )) (compound_statement "{\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" { (expression_statement "local_ac = 0;" (assignment_expression "local_ac = 0" identifier = number_literal) ;) (expression_statement "local_b8 = (undefined4 *)0x0;" (assignment_expression "local_b8 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_000313d0;" goto statement_identifier ;) })))) (expression_statement "local_bc = &DAT_00076b4c;" (assignment_expression "local_bc = &DAT_00076b4c" identifier = (pointer_expression "&DAT_00076b4c" & identifier)) ;) (expression_statement "local_ac = (*DAT_00076b4c)(pbVar14,puVar4);" (assignment_expression "local_ac = (*DAT_00076b4c)(pbVar14,puVar4)" identifier = (call_expression "(*DAT_00076b4c)(pbVar14,puVar4)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar14,puVar4)" ( identifier , identifier )))) ;) (if_statement "if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" if (parenthesized_expression "(local_ac < 2)" ( (binary_expression "local_ac < 2" identifier < number_literal) )) (compound_statement "{\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" { (expression_statement "local_b8 = (undefined4 *)0x0;" (assignment_expression "local_b8 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_000313d0;" goto statement_identifier ;) })) (if_statement "if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }" if (parenthesized_expression "(local_b0 < pbVar1)" ( (binary_expression "local_b0 < pbVar1" identifier < identifier) )) (compound_statement "{\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }" { (expression_statement "puVar4 = (undefined4 *)0x4;" (assignment_expression "puVar4 = (undefined4 *)0x4" identifier = (cast_expression "(undefined4 *)0x4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_0003153d;" goto statement_identifier ;) })) (if_statement "if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;" if (parenthesized_expression "((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8))" ( (binary_expression "(pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)" (parenthesized_expression "(pbVar5 < pbVar1)" ( (binary_expression "pbVar5 < pbVar1" identifier < identifier) )) && (parenthesized_expression "((int)puVar3 - 5U < 8)" ( (binary_expression "(int)puVar3 - 5U < 8" (binary_expression "(int)puVar3 - 5U" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal) < number_literal) ))) )) (goto_statement "goto LAB_000323ac;" goto statement_identifier ;)) (expression_statement "pbVar5 = pbVar14 + 0xc;" (assignment_expression "pbVar5 = pbVar14 + 0xc" identifier = (binary_expression "pbVar14 + 0xc" identifier + number_literal)) ;) (expression_statement "local_b8 = (undefined4 *)0x0;" (assignment_expression "local_b8 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (pbVar5 < pbVar1) goto LAB_000313e1;" if (parenthesized_expression "(pbVar5 < pbVar1)" ( (binary_expression "pbVar5 < pbVar1" identifier < identifier) )) (goto_statement "goto LAB_000313e1;" goto statement_identifier ;)) (labeled_statement "LAB_00031338:\n      local_b0 = pbVar14 + 0x10;" statement_identifier : (expression_statement "local_b0 = pbVar14 + 0x10;" (assignment_expression "local_b0 = pbVar14 + 0x10" identifier = (binary_expression "pbVar14 + 0x10" identifier + number_literal)) ;)) (if_statement "if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }" if (parenthesized_expression "(local_b0 < pbVar1)" ( (binary_expression "local_b0 < pbVar1" identifier < identifier) )) (compound_statement "{\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }" { (expression_statement "local_98 = 0;" (assignment_expression "local_98 = 0" identifier = number_literal) ;) (expression_statement "puVar3 = (undefined4 *)0x4;" (assignment_expression "puVar3 = (undefined4 *)0x4" identifier = (cast_expression "(undefined4 *)0x4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_0003148f;" goto statement_identifier ;) })) (expression_statement "local_98 = 0;" (assignment_expression "local_98 = 0" identifier = number_literal) ;) (labeled_statement "LAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }" statement_identifier : (if_statement "if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }" if (parenthesized_expression "(pbVar14 <= local_b0)" ( (binary_expression "pbVar14 <= local_b0" identifier <= identifier) )) (compound_statement "{\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }" { (expression_statement "local_88 = local_b0;" (assignment_expression "local_88 = local_b0" identifier = identifier) ;) (expression_statement "local_a8 = local_b0;" (assignment_expression "local_a8 = local_b0" identifier = identifier) ;) (expression_statement "local_bc = (undefined4 *)0x0;" (assignment_expression "local_bc = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );" do (compound_statement "{\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        }" { (if_statement "if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (compound_statement "{\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }" { (expression_statement "FUN_0001ec20();" (call_expression "FUN_0001ec20()" identifier (argument_list "()" ( ))) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Version:                 %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Version:                 %d\n",5)" identifier (argument_list "(0,"  Version:                 %d\n",5)" ( number_literal , (string_literal ""  Version:                 %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_ac);" (call_expression "printf(pcVar7,local_ac)" identifier (argument_list "(pcVar7,local_ac)" ( identifier , identifier ))) ;) (if_statement "if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }" if (parenthesized_expression "(1 < local_ac)" ( (binary_expression "1 < local_ac" number_literal < identifier) )) (compound_statement "{\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }" { (expression_statement "pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Number of columns:       %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Number of columns:       %d\n",5)" identifier (argument_list "(0,"  Number of columns:       %d\n",5)" ( number_literal , (string_literal ""  Number of columns:       %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_b8);" (call_expression "printf(pcVar7,local_b8)" identifier (argument_list "(pcVar7,local_b8)" ( identifier , identifier ))) ;) })) (expression_statement "pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Number of used entries:  %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Number of used entries:  %d\n",5)" identifier (argument_list "(0,"  Number of used entries:  %d\n",5)" ( number_literal , (string_literal ""  Number of used entries:  %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_98);" (call_expression "printf(pcVar7,local_98)" identifier (argument_list "(pcVar7,local_98)" ( identifier , identifier ))) ;) (expression_statement "puVar3 = (undefined4 *)0x0;" (assignment_expression "puVar3 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Number of slots:         %d\n\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Number of slots:         %d\n\n",5)" identifier (argument_list "(0,"  Number of slots:         %d\n\n",5)" ( number_literal , (string_literal ""  Number of slots:         %d\n\n"" " string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_bc);" (call_expression "printf(pcVar7,local_bc)" identifier (argument_list "(pcVar7,local_bc)" ( identifier , identifier ))) ;) })) (if_statement "if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }" if (parenthesized_expression "(pbVar1 < local_a8)" ( (binary_expression "pbVar1 < local_a8" identifier < identifier) )) (compound_statement "{\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }" { (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" identifier = (pointer_expression "*(byte **)(param_1 + 8)" * (cast_expression "(byte **)(param_1 + 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5)" identifier = (call_expression "dcgettext(0,"Section %s too small for %d hash table entries\n",5)" identifier (argument_list "(0,"Section %s too small for %d hash table entries\n",5)" ( number_literal , (string_literal ""Section %s too small for %d hash table entries\n"" " string_content escape_sequence ") , number_literal )))) ;) (goto_statement "goto LAB_000314f3;" goto statement_identifier ;) })) (if_statement "if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }" if (parenthesized_expression "(local_ac != 1)" ( (binary_expression "local_ac != 1" identifier != number_literal) )) (compound_statement "{\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }" { (if_statement "if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }" if (parenthesized_expression "(local_ac != 2)" ( (binary_expression "local_ac != 2" identifier != number_literal) )) (compound_statement "{\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }" { (if_statement "if (param_2 == 0) {\n                return 1;\n              }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n                return 1;\n              }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Unsupported version (%d)\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Unsupported version (%d)\n",5)" identifier (argument_list "(0,"  Unsupported version (%d)\n",5)" ( number_literal , (string_literal ""  Unsupported version (%d)\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_ac);" (call_expression "printf(pcVar7,local_ac)" identifier (argument_list "(pcVar7,local_ac)" ( identifier , identifier ))) ;) (goto_statement "goto LAB_000316b0;" goto statement_identifier ;) })) (expression_statement "uVar2 = (int)local_b8 * 4;" (assignment_expression "uVar2 = (int)local_b8 * 4" identifier = (binary_expression "(int)local_b8 * 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pbVar5 = local_a8 + uVar2;" (assignment_expression "pbVar5 = local_a8 + uVar2" identifier = (binary_expression "local_a8 + uVar2" identifier + identifier)) ;) (if_statement "if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }" if (parenthesized_expression "(!CARRY4((uint)local_a8,uVar2))" ( (unary_expression "!CARRY4((uint)local_a8,uVar2)" ! (call_expression "CARRY4((uint)local_a8,uVar2)" identifier (argument_list "((uint)local_a8,uVar2)" ( (cast_expression "(uint)local_a8" ( (type_descriptor "uint" type_identifier) ) identifier) , identifier )))) )) (compound_statement "{\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }" { (expression_statement "uVar6 = uVar2 + 3;" (assignment_expression "uVar6 = uVar2 + 3" identifier = (binary_expression "uVar2 + 3" identifier + number_literal)) ;) (if_statement "if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }" if (parenthesized_expression "(-1 < (int)uVar2)" ( (binary_expression "-1 < (int)uVar2" number_literal < (cast_expression "(int)uVar2" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                uVar6 = uVar2;\n              }" { (expression_statement "uVar6 = uVar2;" (assignment_expression "uVar6 = uVar2" identifier = identifier) ;) })) (if_statement "if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }" if (parenthesized_expression "((undefined4 *)((int)uVar6 >> 2) == local_b8)" ( (binary_expression "(undefined4 *)((int)uVar6 >> 2) == local_b8" (cast_expression "(undefined4 *)((int)uVar6 >> 2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)uVar6 >> 2)" ( (binary_expression "(int)uVar6 >> 2" (cast_expression "(int)uVar6" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) ))) == identifier) )) (compound_statement "{\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }" { (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" identifier = (pointer_expression "*(byte **)(param_1 + 8)" * (cast_expression "(byte **)(param_1 + 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;" (assignment_expression "bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2" identifier = (binary_expression "pbVar1 < pbVar5 + uVar2 * local_98 * 2" identifier < (binary_expression "pbVar5 + uVar2 * local_98 * 2" identifier + (binary_expression "uVar2 * local_98 * 2" (binary_expression "uVar2 * local_98" identifier * identifier) * number_literal)))) ;) (expression_statement "bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;" (assignment_expression "bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2" identifier = (binary_expression "pbVar1 == pbVar5 + uVar2 * local_98 * 2" identifier == (binary_expression "pbVar5 + uVar2 * local_98 * 2" identifier + (binary_expression "uVar2 * local_98 * 2" (binary_expression "uVar2 * local_98" identifier * identifier) * number_literal)))) ;) (if_statement "if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }" if (parenthesized_expression "(!bVar16)" ( (unary_expression "!bVar16" ! identifier) )) (compound_statement "{\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }" { (expression_statement "iVar8 = 0x10;" (assignment_expression "iVar8 = 0x10" identifier = number_literal) ;) (expression_statement "pbVar15 = (byte *)".debug_tu_index";" (assignment_expression "pbVar15 = (byte *)".debug_tu_index"" identifier = (cast_expression "(byte *)".debug_tu_index"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_tu_index"" " string_content "))) ;) (goto_statement "goto code_r0x00031991;" goto statement_identifier ;) })) (expression_statement "pcVar7 = "Section %s too small for offset and size tables\n";" (assignment_expression "pcVar7 = "Section %s too small for offset and size tables\n"" identifier = (string_literal ""Section %s too small for offset and size tables\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0003156a;" goto statement_identifier ;) })) })) (expression_statement "uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5)" identifier = (call_expression "dcgettext(0,"Overlarge number of columns: %x\n",5)" identifier (argument_list "(0,"Overlarge number of columns: %x\n",5)" ( number_literal , (string_literal ""Overlarge number of columns: %x\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar9,local_b8);" (call_expression "warn(uVar9,local_b8)" identifier (argument_list "(uVar9,local_b8)" ( identifier , identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) (if_statement "if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (compound_statement "{\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }" { (if_statement "if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;" if (parenthesized_expression "(local_bc == (undefined4 *)0x0)" ( (binary_expression "local_bc == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000316b0;" goto statement_identifier ;)) (labeled_statement "LAB_00031644:\n            local_b8 = (undefined4 *)0x0;" statement_identifier : (expression_statement "local_b8 = (undefined4 *)0x0;" (assignment_expression "local_b8 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (goto_statement "goto LAB_0003165a;" goto statement_identifier ;) })) (expression_statement "iVar10 = (int)pbVar1 - (int)local_a8;" (assignment_expression "iVar10 = (int)pbVar1 - (int)local_a8" identifier = (binary_expression "(int)pbVar1 - (int)local_a8" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "iVar8 = iVar10 + 3;" (assignment_expression "iVar8 = iVar10 + 3" identifier = (binary_expression "iVar10 + 3" identifier + number_literal)) ;) (if_statement "if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }" if (parenthesized_expression "(-1 < iVar10)" ( (binary_expression "-1 < iVar10" number_literal < identifier) )) (compound_statement "{\n            iVar8 = iVar10;\n          }" { (expression_statement "iVar8 = iVar10;" (assignment_expression "iVar8 = iVar10" identifier = identifier) ;) })) (expression_statement "DAT_00076924 = iVar8 >> 2;" (assignment_expression "DAT_00076924 = iVar8 >> 2" identifier = (binary_expression "iVar8 >> 2" identifier >> number_literal)) ;) (if_statement "if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }" if (parenthesized_expression "(DAT_00076928 == 0)" ( (binary_expression "DAT_00076928 == 0" identifier == number_literal) )) (compound_statement "{\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }" { (expression_statement "DAT_00076920 = 0;" (assignment_expression "DAT_00076920 = 0" identifier = number_literal) ;) (expression_statement "DAT_00076928 = FUN_0002dba0(DAT_00076924,4);" (assignment_expression "DAT_00076928 = FUN_0002dba0(DAT_00076924,4)" identifier = (call_expression "FUN_0002dba0(DAT_00076924,4)" identifier (argument_list "(DAT_00076924,4)" ( identifier , number_literal )))) ;) (labeled_statement "LAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }" statement_identifier : (if_statement "if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }" if (parenthesized_expression "(local_bc == (undefined4 *)0x0)" ( (binary_expression "local_bc == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              return 1;\n            }" { (return_statement "return 1;" return number_literal ;) }))) (goto_statement "goto LAB_00031644;" goto statement_identifier ;) })) (expression_statement "DAT_00076924 = DAT_00076924 + DAT_00076920;" (assignment_expression "DAT_00076924 = DAT_00076924 + DAT_00076920" identifier = (binary_expression "DAT_00076924 + DAT_00076920" identifier + identifier)) ;) (if_statement "if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }" if (parenthesized_expression "(DAT_00076924 < 0x3fffffff)" ( (binary_expression "DAT_00076924 < 0x3fffffff" identifier < number_literal) )) (compound_statement "{\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }" { (expression_statement "DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);" (assignment_expression "DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4)" identifier = (call_expression "xrealloc(DAT_00076928,DAT_00076924 * 4)" identifier (argument_list "(DAT_00076928,DAT_00076924 * 4)" ( identifier , (binary_expression "DAT_00076924 * 4" identifier * number_literal) )))) ;) (goto_statement "goto LAB_00031d8a;" goto statement_identifier ;) })) (expression_statement "FUN_0001e980();" (call_expression "FUN_0001e980()" identifier (argument_list "()" ( ))) ;) (expression_statement "pbVar14 = (byte *)0x0;" (assignment_expression "pbVar14 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pbVar5 = extraout_ECX;" (assignment_expression "pbVar5 = extraout_ECX" identifier = identifier) ;) (labeled_statement "LAB_000323ac:\n          puVar4 = puVar3 + -1;" statement_identifier : (expression_statement "puVar4 = puVar3 + -1;" (assignment_expression "puVar4 = puVar3 + -1" identifier = (binary_expression "puVar3 + -1" identifier + number_literal)) ;)) (labeled_statement "LAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);" statement_identifier : (expression_statement "local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);" (assignment_expression "local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4)" identifier = (cast_expression "(undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)*local_bc)(pbVar5,puVar4)" (parenthesized_expression "(*(code *)*local_bc)" ( (pointer_expression "*(code *)*local_bc" * (cast_expression "(code *)*local_bc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_bc" * identifier))) )) (argument_list "(pbVar5,puVar4)" ( identifier , identifier ))))) ;)) (labeled_statement "LAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;" statement_identifier : (expression_statement "pbVar5 = pbVar14 + 0xc;" (assignment_expression "pbVar5 = pbVar14 + 0xc" identifier = (binary_expression "pbVar14 + 0xc" identifier + number_literal)) ;)) (if_statement "if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }" if (parenthesized_expression "(pbVar5 < pbVar1)" ( (binary_expression "pbVar5 < pbVar1" identifier < identifier) )) (compound_statement "{\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }" { (labeled_statement "LAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);" statement_identifier : (expression_statement "local_98 = (*DAT_00076b4c)(local_b0,4);" (assignment_expression "local_98 = (*DAT_00076b4c)(local_b0,4)" identifier = (call_expression "(*DAT_00076b4c)(local_b0,4)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(local_b0,4)" ( identifier , number_literal )))) ;)) (expression_statement "local_b0 = pbVar14 + 0x10;" (assignment_expression "local_b0 = pbVar14 + 0x10" identifier = (binary_expression "pbVar14 + 0x10" identifier + number_literal)) ;) (if_statement "if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }" if (parenthesized_expression "(local_b0 < pbVar1)" ( (binary_expression "local_b0 < pbVar1" identifier < identifier) )) (compound_statement "{\n              puVar3 = (undefined4 *)0x4;\n            }" { (expression_statement "puVar3 = (undefined4 *)0x4;" (assignment_expression "puVar3 = (undefined4 *)0x4" identifier = (cast_expression "(undefined4 *)0x4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }" else (compound_statement "{\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }" { (if_statement "if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;" if (parenthesized_expression "(7 < (int)puVar3 - 0xdU)" ( (binary_expression "7 < (int)puVar3 - 0xdU" number_literal < (binary_expression "(int)puVar3 - 0xdU" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal)) )) (goto_statement "goto LAB_0003134f;" goto statement_identifier ;)) (expression_statement "puVar3 = puVar3 + -3;" (assignment_expression "puVar3 = puVar3 + -3" identifier = (binary_expression "puVar3 + -3" identifier + number_literal)) ;) }))) }) (else_clause "else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }" else (compound_statement "{\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }" { (if_statement "if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;" if (parenthesized_expression "((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2))" ( (binary_expression "(pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)" (parenthesized_expression "(pbVar1 <= local_b0)" ( (binary_expression "pbVar1 <= local_b0" identifier <= identifier) )) || (parenthesized_expression "(uVar2 = (int)puVar3 - 9, 7 < uVar2)" ( (comma_expression "uVar2 = (int)puVar3 - 9, 7 < uVar2" (assignment_expression "uVar2 = (int)puVar3 - 9" identifier = (binary_expression "(int)puVar3 - 9" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) - number_literal)) , (binary_expression "7 < uVar2" number_literal < identifier)) ))) )) (goto_statement "goto LAB_00031338;" goto statement_identifier ;)) (expression_statement "puVar3 = puVar3 + -2;" (assignment_expression "puVar3 = puVar3 + -2" identifier = (binary_expression "puVar3 + -2" identifier + number_literal)) ;) (expression_statement "local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);" (assignment_expression "local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2)" identifier = (call_expression "(*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(local_b0,puVar3,uVar2,uVar2)" ( identifier , identifier , identifier , identifier )))) ;) (expression_statement "local_b0 = pbVar14 + 0x10;" (assignment_expression "local_b0 = pbVar14 + 0x10" identifier = (binary_expression "pbVar14 + 0x10" identifier + number_literal)) ;) (if_statement "if (pbVar1 <= local_b0) goto LAB_0003134f;" if (parenthesized_expression "(pbVar1 <= local_b0)" ( (binary_expression "pbVar1 <= local_b0" identifier <= identifier) )) (goto_statement "goto LAB_0003134f;" goto statement_identifier ;)) (expression_statement "puVar3 = (undefined4 *)0x4;" (assignment_expression "puVar3 = (undefined4 *)0x4" identifier = (cast_expression "(undefined4 *)0x4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (labeled_statement "LAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);" statement_identifier : (expression_statement "puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);" (assignment_expression "puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3)" identifier = (cast_expression "(undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*DAT_00076b4c)(pbVar5,puVar3)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar5,puVar3)" ( identifier , identifier ))))) ;)) (expression_statement "pbVar5 = local_b0 + (int)puVar3 * 8;" (assignment_expression "pbVar5 = local_b0 + (int)puVar3 * 8" identifier = (binary_expression "local_b0 + (int)puVar3 * 8" identifier + (binary_expression "(int)puVar3 * 8" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "local_a8 = pbVar5 + (int)puVar3 * 4;" (assignment_expression "local_a8 = pbVar5 + (int)puVar3 * 4" identifier = (binary_expression "pbVar5 + (int)puVar3 * 4" identifier + (binary_expression "(int)puVar3 * 4" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "local_bc = puVar3;" (assignment_expression "local_bc = puVar3" identifier = identifier) ;) (if_statement "if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;" if (parenthesized_expression "(((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0))))" ( (binary_expression "((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))" (parenthesized_expression "((pbVar5 < local_b0) || (local_a8 < pbVar14))" ( (binary_expression "(pbVar5 < local_b0) || (local_a8 < pbVar14)" (parenthesized_expression "(pbVar5 < local_b0)" ( (binary_expression "pbVar5 < local_b0" identifier < identifier) )) || (parenthesized_expression "(local_a8 < pbVar14)" ( (binary_expression "local_a8 < pbVar14" identifier < identifier) ))) )) || (parenthesized_expression "((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))" ( (parenthesized_expression "(pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0))" ( (binary_expression "pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)" (binary_expression "pbVar5 == local_b0" identifier == identifier) && (parenthesized_expression "(puVar3 != (undefined4 *)0x0)" ( (binary_expression "puVar3 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) ))) )) (goto_statement "goto LAB_000314c9;" goto statement_identifier ;)) (expression_statement "local_88 = local_b0;" (assignment_expression "local_88 = local_b0" identifier = identifier) ;) (expression_statement "local_b0 = pbVar5;" (assignment_expression "local_b0 = pbVar5" identifier = identifier) ;) }) while (parenthesized_expression "( true )" ( true )) ;) }))) (expression_statement "local_bc = (undefined4 *)0x0;" (assignment_expression "local_bc = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);" statement_identifier : (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" identifier = (pointer_expression "*(byte **)(param_1 + 8)" * (cast_expression "(byte **)(param_1 + 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;)) (expression_statement "uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);" (assignment_expression "uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5)" identifier = (call_expression "dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5)" identifier (argument_list "(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5)" ( number_literal , (string_literal ""Section %s is too small for %d slot\n"" " string_content escape_sequence ") , (string_literal ""Section %s is too small for %d slots\n"" " string_content escape_sequence ") , identifier , number_literal )))) ;) (goto_statement "goto LAB_000314f3;" goto statement_identifier ;) })) (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" identifier = (pointer_expression "*(byte **)(param_1 + 8)" * (cast_expression "(byte **)(param_1 + 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "pcVar7 = "Section %s is too small to contain a CU/TU header\n";" (assignment_expression "pcVar7 = "Section %s is too small to contain a CU/TU header\n"" identifier = (string_literal ""Section %s is too small to contain a CU/TU header\n"" " string_content escape_sequence ")) ;) }))) (labeled_statement "LAB_0003156a:\n  local_bc = (undefined4 *)0x5;" statement_identifier : (expression_statement "local_bc = (undefined4 *)0x5;" (assignment_expression "local_bc = (undefined4 *)0x5" identifier = (cast_expression "(undefined4 *)0x5" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "uVar9 = dcgettext(0,pcVar7,5);" (assignment_expression "uVar9 = dcgettext(0,pcVar7,5)" identifier = (call_expression "dcgettext(0,pcVar7,5)" identifier (argument_list "(0,pcVar7,5)" ( number_literal , identifier , number_literal )))) ;) (labeled_statement "LAB_000314f3:\n  warn(uVar9,pbVar14,local_bc);" statement_identifier : (expression_statement "warn(uVar9,pbVar14,local_bc);" (call_expression "warn(uVar9,pbVar14,local_bc)" identifier (argument_list "(uVar9,pbVar14,local_bc)" ( identifier , identifier , identifier ))) ;)) (return_statement "return 0;" return number_literal ;) (labeled_statement "LAB_0003165a:\n  if (pbVar1 < local_88 + 8) {\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }" statement_identifier : (if_statement "if (pbVar1 < local_88 + 8) {\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }" if (parenthesized_expression "(pbVar1 < local_88 + 8)" ( (binary_expression "pbVar1 < local_88 + 8" identifier < (binary_expression "local_88 + 8" identifier + number_literal)) )) (compound_statement "{\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }" { (expression_statement "local_6c = 0;" (assignment_expression "local_6c = 0" identifier = number_literal) ;) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" identifier = number_literal) ;) (expression_statement "local_64 = 0;" (assignment_expression "local_64 = 0" identifier = number_literal) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0003168c;" goto statement_identifier ;) }))) (expression_statement "piVar19 = &local_64;" (assignment_expression "piVar19 = &local_64" identifier = (pointer_expression "&local_64" & identifier)) ;) (expression_statement "FUN_000490b0(local_88,&local_6c,piVar19);" (call_expression "FUN_000490b0(local_88,&local_6c,piVar19)" identifier (argument_list "(local_88,&local_6c,piVar19)" ( identifier , (pointer_expression "&local_6c" & identifier) , identifier ))) ;) (if_statement "if ((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)) {\n    iVar8 = 4;\n    if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }\n    if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }\n    if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }" if (parenthesized_expression "((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0))" ( (binary_expression "(local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)" (parenthesized_expression "(local_68 != 0 || local_6c != 0)" ( (binary_expression "local_68 != 0 || local_6c != 0" (binary_expression "local_68 != 0" identifier != number_literal) || (binary_expression "local_6c != 0" identifier != number_literal)) )) || (parenthesized_expression "(local_60 != 0 || local_64 != 0)" ( (binary_expression "local_60 != 0 || local_64 != 0" (binary_expression "local_60 != 0" identifier != number_literal) || (binary_expression "local_64 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n    iVar8 = 4;\n    if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }\n    if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }\n    if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (if_statement "if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }" if (parenthesized_expression "((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8))))" ( (binary_expression "(local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))" (parenthesized_expression "(local_b0 + 4 < pbVar1)" ( (binary_expression "local_b0 + 4 < pbVar1" (binary_expression "local_b0 + 4" identifier + number_literal) < identifier) )) || (parenthesized_expression "((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))" ( (parenthesized_expression "(pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8))" ( (comma_expression "pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)" (assignment_expression "pbVar14 = local_a8" identifier = identifier) , (binary_expression "local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)" (binary_expression "local_b0 < pbVar1" identifier < identifier) && (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)" ( (comma_expression "iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)local_b0" identifier = (binary_expression "(int)pbVar1 - (int)local_b0" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" identifier - number_literal) < number_literal)) )))) )) ))) )) (compound_statement "{\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }" { (expression_statement "iVar8 = (*DAT_00076b4c)(local_b0,iVar8);" (assignment_expression "iVar8 = (*DAT_00076b4c)(local_b0,iVar8)" identifier = (call_expression "(*DAT_00076b4c)(local_b0,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(local_b0,iVar8)" ( identifier , identifier )))) ;) (expression_statement "pbVar14 = local_a8 + iVar8 * 4;" (assignment_expression "pbVar14 = local_a8 + iVar8 * 4" identifier = (binary_expression "local_a8 + iVar8 * 4" identifier + (binary_expression "iVar8 * 4" identifier * number_literal))) ;) (if_statement "if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }" if (parenthesized_expression "(local_a8 + iVar8 * 4 < local_a8)" ( (binary_expression "local_a8 + iVar8 * 4 < local_a8" (binary_expression "local_a8 + iVar8 * 4" identifier + (binary_expression "iVar8 * 4" identifier * number_literal)) < identifier) )) (compound_statement "{\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }" { (expression_statement "uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Section index pool located before start of section\n",5)" identifier = (call_expression "dcgettext(0,"Section index pool located before start of section\n",5)" identifier (argument_list "(0,"Section index pool located before start of section\n",5)" ( number_literal , (string_literal ""Section index pool located before start of section\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar9);" (call_expression "warn(uVar9)" identifier (argument_list "(uVar9)" ( identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) })) (if_statement "if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (compound_statement "{\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }" { (expression_statement "piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);" (assignment_expression "piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c)" identifier = (cast_expression "(int *)FUN_0001eb80(local_64,local_60,local_5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001eb80(local_64,local_60,local_5c)" identifier (argument_list "(local_64,local_60,local_5c)" ( identifier , identifier , identifier ))))) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5)" identifier (argument_list "(0,"  [%3d] Signature:  0x%s  Sections: ",5)" ( number_literal , (string_literal ""  [%3d] Signature:  0x%s  Sections: "" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_b8,piVar19);" (call_expression "printf(pcVar7,local_b8,piVar19)" identifier (argument_list "(pcVar7,local_b8,piVar19)" ( identifier , identifier , identifier ))) ;) })) (if_statement "if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }" if (parenthesized_expression "(pbVar14 < pbVar1)" ( (binary_expression "pbVar14 < pbVar1" identifier < identifier) )) (compound_statement "{\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }" { (do_statement "do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );" do (compound_statement "{\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      }" { (expression_statement "pbVar5 = pbVar14 + 4;" (assignment_expression "pbVar5 = pbVar14 + 4" identifier = (binary_expression "pbVar14 + 4" identifier + number_literal)) ;) (if_statement "if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }" if (parenthesized_expression "(pbVar5 < pbVar1)" ( (binary_expression "pbVar5 < pbVar1" identifier < identifier) )) (compound_statement "{\n          iVar8 = 4;\n        }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) }) (else_clause "else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }" else (compound_statement "{\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }" { (expression_statement "iVar8 = (int)pbVar1 - (int)pbVar14;" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar14" identifier = (binary_expression "(int)pbVar1 - (int)pbVar14" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar14" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (7 < iVar8 - 1U) goto LAB_000317d8;" if (parenthesized_expression "(7 < iVar8 - 1U)" ( (binary_expression "7 < iVar8 - 1U" number_literal < (binary_expression "iVar8 - 1U" identifier - number_literal)) )) (goto_statement "goto LAB_000317d8;" goto statement_identifier ;)) }))) (expression_statement "iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);" (assignment_expression "iVar8 = (*DAT_00076b4c)(pbVar14,iVar8)" identifier = (call_expression "(*DAT_00076b4c)(pbVar14,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar14,iVar8)" ( identifier , identifier )))) ;) (if_statement "if (iVar8 == 0) goto LAB_000317d8;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000317d8;" goto statement_identifier ;)) (if_statement "if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }" { (if_statement "if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }" if (parenthesized_expression "(DAT_00076920 < DAT_00076924)" ( (binary_expression "DAT_00076920 < DAT_00076924" identifier < identifier) )) (compound_statement "{\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }" { (expression_statement "iVar10 = DAT_00076920 * 4;" (assignment_expression "iVar10 = DAT_00076920 * 4" identifier = (binary_expression "DAT_00076920 * 4" identifier * number_literal)) ;) (expression_statement "DAT_00076920 = DAT_00076920 + 1;" (assignment_expression "DAT_00076920 = DAT_00076920 + 1" identifier = (binary_expression "DAT_00076920 + 1" identifier + number_literal)) ;) (expression_statement "*(int *)(DAT_00076928 + iVar10) = iVar8;" (assignment_expression "*(int *)(DAT_00076928 + iVar10) = iVar8" (pointer_expression "*(int *)(DAT_00076928 + iVar10)" * (cast_expression "(int *)(DAT_00076928 + iVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_00076928 + iVar10)" ( (binary_expression "DAT_00076928 + iVar10" identifier + identifier) )))) = identifier) ;) }) (else_clause "else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }" else (compound_statement "{\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }" { (expression_statement "piVar19 = (int *)0x5;" (assignment_expression "piVar19 = (int *)0x5" identifier = (cast_expression "(int *)0x5" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");" (assignment_expression "uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n")" identifier = (call_expression "dcgettext(0,"Internal error: out of space in the shndx pool.\n")" identifier (argument_list "(0,"Internal error: out of space in the shndx pool.\n")" ( number_literal , (string_literal ""Internal error: out of space in the shndx pool.\n"" " string_content escape_sequence ") )))) ;) (expression_statement "error(uVar9);" (call_expression "error(uVar9)" identifier (argument_list "(uVar9)" ( identifier ))) ;) }))) }) (else_clause "else {\n          printf(" %d",iVar8,piVar19);\n        }" else (compound_statement "{\n          printf(" %d",iVar8,piVar19);\n        }" { (expression_statement "printf(" %d",iVar8,piVar19);" (call_expression "printf(" %d",iVar8,piVar19)" identifier (argument_list "(" %d",iVar8,piVar19)" ( (string_literal "" %d"" " string_content ") , identifier , identifier ))) ;) }))) (expression_statement "pbVar14 = pbVar5;" (assignment_expression "pbVar14 = pbVar5" identifier = identifier) ;) (if_statement "if (pbVar1 <= pbVar5) break;" if (parenthesized_expression "(pbVar1 <= pbVar5)" ( (binary_expression "pbVar1 <= pbVar5" identifier <= identifier) )) (break_statement "break;" break ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" identifier = (pointer_expression "*(byte **)(param_1 + 8)" * (cast_expression "(byte **)(param_1 + 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "pcVar7 = "Section %s too small for shndx pool\n";" (assignment_expression "pcVar7 = "Section %s too small for shndx pool\n"" identifier = (string_literal ""Section %s too small for shndx pool\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0003156a;" goto statement_identifier ;) })) (labeled_statement "LAB_0003168c:\n  local_b8 = (undefined4 *)((int)local_b8 + 1);" statement_identifier : (expression_statement "local_b8 = (undefined4 *)((int)local_b8 + 1);" (assignment_expression "local_b8 = (undefined4 *)((int)local_b8 + 1)" identifier = (cast_expression "(undefined4 *)((int)local_b8 + 1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + 1)" ( (binary_expression "(int)local_b8 + 1" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;)) (expression_statement "local_88 = local_88 + 8;" (assignment_expression "local_88 = local_88 + 8" identifier = (binary_expression "local_88 + 8" identifier + number_literal)) ;) (expression_statement "local_b0 = local_b0 + 4;" (assignment_expression "local_b0 = local_b0 + 4" identifier = (binary_expression "local_b0 + 4" identifier + number_literal)) ;) (if_statement "if (local_bc <= local_b8) goto LAB_000316a3;" if (parenthesized_expression "(local_bc <= local_b8)" ( (binary_expression "local_bc <= local_b8" identifier <= identifier) )) (goto_statement "goto LAB_000316a3;" goto statement_identifier ;)) (goto_statement "goto LAB_0003165a;" goto statement_identifier ;) (labeled_statement "LAB_000317d8:\n  if (param_2 == 0) {\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }\n  else {\n    putchar(10);\n  }" statement_identifier : (if_statement "if (param_2 == 0) {\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }\n  else {\n    putchar(10);\n  }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }" { (if_statement "if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }" if (parenthesized_expression "(DAT_00076920 < DAT_00076924)" ( (binary_expression "DAT_00076920 < DAT_00076924" identifier < identifier) )) (compound_statement "{\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }" { (expression_statement "iVar8 = DAT_00076920 * 4;" (assignment_expression "iVar8 = DAT_00076920 * 4" identifier = (binary_expression "DAT_00076920 * 4" identifier * number_literal)) ;) (expression_statement "DAT_00076920 = DAT_00076920 + 1;" (assignment_expression "DAT_00076920 = DAT_00076920 + 1" identifier = (binary_expression "DAT_00076920 + 1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(DAT_00076928 + iVar8) = 0;" (assignment_expression "*(undefined4 *)(DAT_00076928 + iVar8) = 0" (pointer_expression "*(undefined4 *)(DAT_00076928 + iVar8)" * (cast_expression "(undefined4 *)(DAT_00076928 + iVar8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_00076928 + iVar8)" ( (binary_expression "DAT_00076928 + iVar8" identifier + identifier) )))) = number_literal) ;) }) (else_clause "else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }" else (compound_statement "{\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }" { (expression_statement "uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5)" identifier = (call_expression "dcgettext(0,"Internal error: out of space in the shndx pool.\n",5)" identifier (argument_list "(0,"Internal error: out of space in the shndx pool.\n",5)" ( number_literal , (string_literal ""Internal error: out of space in the shndx pool.\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(uVar9);" (call_expression "error(uVar9)" identifier (argument_list "(uVar9)" ( identifier ))) ;) }))) }) (else_clause "else {\n    putchar(10);\n  }" else (compound_statement "{\n    putchar(10);\n  }" { (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) })))) (goto_statement "goto LAB_0003168c;" goto statement_identifier ;) (while_statement "while( true ) {\n    iVar8 = iVar8 + -1;\n    bVar16 = *pbVar14 < *pbVar15;\n    bVar17 = *pbVar14 == *pbVar15;\n    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;\n    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n    if (!bVar17) break;\ncode_r0x00031991:\n    if (iVar8 == 0) break;\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    iVar8 = iVar8 + -1;\n    bVar16 = *pbVar14 < *pbVar15;\n    bVar17 = *pbVar14 == *pbVar15;\n    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;\n    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n    if (!bVar17) break;\ncode_r0x00031991:\n    if (iVar8 == 0) break;\n  }" { (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar16 = *pbVar14 < *pbVar15;" (assignment_expression "bVar16 = *pbVar14 < *pbVar15" identifier = (binary_expression "*pbVar14 < *pbVar15" (pointer_expression "*pbVar14" * identifier) < (pointer_expression "*pbVar15" * identifier))) ;) (expression_statement "bVar17 = *pbVar14 == *pbVar15;" (assignment_expression "bVar17 = *pbVar14 == *pbVar15" identifier = (binary_expression "*pbVar14 == *pbVar15" (pointer_expression "*pbVar14" * identifier) == (pointer_expression "*pbVar15" * identifier))) ;) (expression_statement "pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;" (assignment_expression "pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1" identifier = (binary_expression "pbVar14 + (uint)bVar18 * -2 + 1" (binary_expression "pbVar14 + (uint)bVar18 * -2" identifier + (binary_expression "(uint)bVar18 * -2" (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;" (assignment_expression "pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1" identifier = (binary_expression "pbVar15 + (uint)bVar18 * -2 + 1" (binary_expression "pbVar15 + (uint)bVar18 * -2" identifier + (binary_expression "(uint)bVar18 * -2" (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (if_statement "if (!bVar17) break;" if (parenthesized_expression "(!bVar17)" ( (unary_expression "!bVar17" ! identifier) )) (break_statement "break;" break ;)) (labeled_statement "code_r0x00031991:\n    if (iVar8 == 0) break;" statement_identifier : (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;))) })) (expression_statement "bVar17 = !bVar16 && !bVar17;" (assignment_expression "bVar17 = !bVar16 && !bVar17" identifier = (binary_expression "!bVar16 && !bVar17" (unary_expression "!bVar16" ! identifier) && (unary_expression "!bVar17" ! identifier))) ;) (if_statement "if (param_2 == 0) {\n    if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }\n    if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }\n  }\n  else {\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n    if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }\n    if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }\n  }" { (if_statement "if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }" if (parenthesized_expression "(bVar17 == bVar16)" ( (binary_expression "bVar17 == bVar16" identifier == identifier) )) (compound_statement "{\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }" { (expression_statement "DAT_00076910 = local_98;" (assignment_expression "DAT_00076910 = local_98" identifier = identifier) ;) (expression_statement "local_78 = (undefined4 *)FUN_00031220(local_98,0x68);" (assignment_expression "local_78 = (undefined4 *)FUN_00031220(local_98,0x68)" identifier = (cast_expression "(undefined4 *)FUN_00031220(local_98,0x68)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00031220(local_98,0x68)" identifier (argument_list "(local_98,0x68)" ( identifier , number_literal ))))) ;) (expression_statement "DAT_00076908 = local_78;" (assignment_expression "DAT_00076908 = local_78" identifier = identifier) ;) }) (else_clause "else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }" else (compound_statement "{\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }" { (expression_statement "DAT_00076914 = local_98;" (assignment_expression "DAT_00076914 = local_98" identifier = identifier) ;) (expression_statement "local_78 = (undefined4 *)FUN_00031220(local_98,0x68);" (assignment_expression "local_78 = (undefined4 *)FUN_00031220(local_98,0x68)" identifier = (cast_expression "(undefined4 *)FUN_00031220(local_98,0x68)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00031220(local_98,0x68)" identifier (argument_list "(local_98,0x68)" ( identifier , number_literal ))))) ;) (expression_statement "DAT_0007690c = local_78;" (assignment_expression "DAT_0007690c = local_78" identifier = identifier) ;) }))) (if_statement "if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }" if (parenthesized_expression "(local_bc != (undefined4 *)0x0)" ( (binary_expression "local_bc != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }" { (labeled_statement "LAB_000319e5:\n      local_a4 = (undefined4 *)0x0;" statement_identifier : (expression_statement "local_a4 = (undefined4 *)0x0;" (assignment_expression "local_a4 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pbVar14 = local_88;" (assignment_expression "pbVar14 = local_88" identifier = identifier) ;) (expression_statement "pbVar15 = local_b0;" (assignment_expression "pbVar15 = local_b0" identifier = identifier) ;) (do_statement "do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);" do (compound_statement "{\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      }" { (expression_statement "pbVar12 = pbVar14 + 8;" (assignment_expression "pbVar12 = pbVar14 + 8" identifier = (binary_expression "pbVar14 + 8" identifier + number_literal)) ;) (if_statement "if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }" if (parenthesized_expression "(pbVar1 < pbVar12)" ( (binary_expression "pbVar1 < pbVar12" identifier < identifier) )) (compound_statement "{\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }" { (expression_statement "local_6c = 0;" (assignment_expression "local_6c = 0" identifier = number_literal) ;) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" identifier = number_literal) ;) (expression_statement "local_64 = 0;" (assignment_expression "local_64 = 0" identifier = number_literal) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) }) (else_clause "else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }" else (compound_statement "{\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }" { (expression_statement "FUN_000490b0(pbVar14,&local_6c,&local_64);" (call_expression "FUN_000490b0(pbVar14,&local_6c,&local_64)" identifier (argument_list "(pbVar14,&local_6c,&local_64)" ( identifier , (pointer_expression "&local_6c" & identifier) , (pointer_expression "&local_64" & identifier) ))) ;) }))) (if_statement "if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;" if (parenthesized_expression "(pbVar15 + 4 < pbVar1)" ( (binary_expression "pbVar15 + 4 < pbVar1" (binary_expression "pbVar15 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);" statement_identifier : (expression_statement "uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);" (assignment_expression "uVar6 = (*DAT_00076b4c)(pbVar15,iVar8)" identifier = (call_expression "(*DAT_00076b4c)(pbVar15,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar15,iVar8)" ( identifier , identifier )))) ;)) (if_statement "if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }" if (parenthesized_expression "(uVar6 != 0)" ( (binary_expression "uVar6 != 0" identifier != number_literal) )) (compound_statement "{\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }" { (if_statement "if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }" if (parenthesized_expression "(local_98 < uVar6)" ( (binary_expression "local_98 < uVar6" identifier < identifier) )) (compound_statement "{\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }" { (expression_statement "uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5)" identifier = (call_expression "dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5)" identifier (argument_list "(0,"Row index (%u) is larger than number of used entries (%u)\n",5)" ( number_literal , (string_literal ""Row index (%u) is larger than number of used entries (%u)\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "local_b8 = (undefined4 *)local_98;" (assignment_expression "local_b8 = (undefined4 *)local_98" identifier = (cast_expression "(undefined4 *)local_98" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (goto_statement "goto LAB_00031dd2;" goto statement_identifier ;) })) (if_statement "if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }" { (if_statement "if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }" if (parenthesized_expression "(pbVar1 <= pbVar12)" ( (binary_expression "pbVar1 <= pbVar12" identifier <= identifier) )) (compound_statement "{\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }" { (expression_statement "pcVar7 = "Signature (%p) extends beyond end of space in section\n";" (assignment_expression "pcVar7 = "Signature (%p) extends beyond end of space in section\n"" identifier = (string_literal ""Signature (%p) extends beyond end of space in section\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0003156a;" goto statement_identifier ;) })) (expression_statement "uVar9 = *(undefined4 *)(pbVar14 + 4);" (assignment_expression "uVar9 = *(undefined4 *)(pbVar14 + 4)" identifier = (pointer_expression "*(undefined4 *)(pbVar14 + 4)" * (cast_expression "(undefined4 *)(pbVar14 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar14 + 4)" ( (binary_expression "pbVar14 + 4" identifier + number_literal) ))))) ;) (expression_statement "local_8c = local_78 + uVar6 * 0x1a + -0x1a;" (assignment_expression "local_8c = local_78 + uVar6 * 0x1a + -0x1a" identifier = (binary_expression "local_78 + uVar6 * 0x1a + -0x1a" (binary_expression "local_78 + uVar6 * 0x1a" identifier + (binary_expression "uVar6 * 0x1a" identifier * number_literal)) + number_literal)) ;) (expression_statement "*local_8c = *(undefined4 *)pbVar14;" (assignment_expression "*local_8c = *(undefined4 *)pbVar14" (pointer_expression "*local_8c" * identifier) = (pointer_expression "*(undefined4 *)pbVar14" * (cast_expression "(undefined4 *)pbVar14" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "local_8c[1] = uVar9;" (assignment_expression "local_8c[1] = uVar9" (subscript_expression "local_8c[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar13 = (uVar6 + 0x3fffffff) * uVar2;" (assignment_expression "uVar13 = (uVar6 + 0x3fffffff) * uVar2" identifier = (binary_expression "(uVar6 + 0x3fffffff) * uVar2" (parenthesized_expression "(uVar6 + 0x3fffffff)" ( (binary_expression "uVar6 + 0x3fffffff" identifier + number_literal) )) * identifier)) ;) (expression_statement "pbVar14 = pbVar5 + uVar13;" (assignment_expression "pbVar14 = pbVar5 + uVar13" identifier = (binary_expression "pbVar5 + uVar13" identifier + identifier)) ;) (if_statement "if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;" if (parenthesized_expression "((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14))" ( (binary_expression "(CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)" (parenthesized_expression "(CARRY4(uVar13,(uint)pbVar5))" ( (call_expression "CARRY4(uVar13,(uint)pbVar5)" identifier (argument_list "(uVar13,(uint)pbVar5)" ( identifier , (cast_expression "(uint)pbVar5" ( (type_descriptor "uint" type_identifier) ) identifier) ))) )) || (parenthesized_expression "(pbVar1 < pbVar14)" ( (binary_expression "pbVar1 < pbVar14" identifier < identifier) ))) )) (goto_statement "goto LAB_00031db8;" goto statement_identifier ;)) (if_statement "if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;" if (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" ( (binary_expression "local_b8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00031af3;" goto statement_identifier ;)) }) (else_clause "else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }" else (compound_statement "{\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }" { (expression_statement "uVar13 = (uVar6 + 0x3fffffff) * uVar2;" (assignment_expression "uVar13 = (uVar6 + 0x3fffffff) * uVar2" identifier = (binary_expression "(uVar6 + 0x3fffffff) * uVar2" (parenthesized_expression "(uVar6 + 0x3fffffff)" ( (binary_expression "uVar6 + 0x3fffffff" identifier + number_literal) )) * identifier)) ;) (expression_statement "pbVar14 = pbVar5 + uVar13;" (assignment_expression "pbVar14 = pbVar5 + uVar13" identifier = (binary_expression "pbVar5 + uVar13" identifier + identifier)) ;) (if_statement "if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }" if (parenthesized_expression "((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14))" ( (binary_expression "(CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)" (parenthesized_expression "(CARRY4(uVar13,(uint)pbVar5))" ( (call_expression "CARRY4(uVar13,(uint)pbVar5)" identifier (argument_list "(uVar13,(uint)pbVar5)" ( identifier , (cast_expression "(uint)pbVar5" ( (type_descriptor "uint" type_identifier) ) identifier) ))) )) || (parenthesized_expression "(pbVar1 < pbVar14)" ( (binary_expression "pbVar1 < pbVar14" identifier < identifier) ))) )) (compound_statement "{\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }" { (labeled_statement "LAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);" statement_identifier : (expression_statement "uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);" (assignment_expression "uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5)" identifier = (call_expression "dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5)" identifier (argument_list "(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5)" ( number_literal , (string_literal ""Row index (%u) * num columns (%u) > space remaining in section\n"" " string_content escape_sequence ") , number_literal )))) ;)) (labeled_statement "LAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);" statement_identifier : (expression_statement "warn(uVar9,uVar6,local_b8);" (call_expression "warn(uVar9,uVar6,local_b8)" identifier (argument_list "(uVar9,uVar6,local_b8)" ( identifier , identifier , identifier ))) ;)) (return_statement "return 0;" return number_literal ;) })) (expression_statement "uVar9 = FUN_0001eb80(local_64,local_60,local_5c);" (assignment_expression "uVar9 = FUN_0001eb80(local_64,local_60,local_5c)" identifier = (call_expression "FUN_0001eb80(local_64,local_60,local_5c)" identifier (argument_list "(local_64,local_60,local_5c)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [%3d] 0x%s",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [%3d] 0x%s",5)" identifier (argument_list "(0,"  [%3d] 0x%s",5)" ( number_literal , (string_literal ""  [%3d] 0x%s"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_a4,uVar9);" (call_expression "printf(pcVar7,local_a4,uVar9)" identifier (argument_list "(pcVar7,local_a4,uVar9)" ( identifier , identifier , identifier ))) ;) (if_statement "if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }" if (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" ( (binary_expression "local_b8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }" { (expression_statement "local_8c = local_78 + uVar6 * 0x1a + -0x1a;" (assignment_expression "local_8c = local_78 + uVar6 * 0x1a + -0x1a" identifier = (binary_expression "local_78 + uVar6 * 0x1a + -0x1a" (binary_expression "local_78 + uVar6 * 0x1a" identifier + (binary_expression "uVar6 * 0x1a" identifier * number_literal)) + number_literal)) ;) (labeled_statement "LAB_00031af3:\n                local_b4 = (undefined4 *)0x0;" statement_identifier : (expression_statement "local_b4 = (undefined4 *)0x0;" (assignment_expression "local_b4 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pbVar11 = local_a8;" (assignment_expression "pbVar11 = local_a8" identifier = identifier) ;) (do_statement "do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);" do (compound_statement "{\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                }" { (expression_statement "local_b4 = (undefined4 *)((int)local_b4 + 1);" (assignment_expression "local_b4 = (undefined4 *)((int)local_b4 + 1)" identifier = (cast_expression "(undefined4 *)((int)local_b4 + 1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b4 + 1)" ( (binary_expression "(int)local_b4 + 1" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (if_statement "if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }" if (parenthesized_expression "(pbVar14 + 4 < pbVar1)" ( (binary_expression "pbVar14 + 4 < pbVar1" (binary_expression "pbVar14 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);" statement_identifier : (expression_statement "uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);" (assignment_expression "uVar9 = (*DAT_00076b4c)(pbVar14,iVar8)" identifier = (call_expression "(*DAT_00076b4c)(pbVar14,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar14,iVar8)" ( identifier , identifier )))) ;)) (if_statement "if (param_2 == 0) goto LAB_00031b3e;" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00031b3e;" goto statement_identifier ;)) (labeled_statement "LAB_00031bf1:\n                    printf(" %8d",uVar9);" statement_identifier : (expression_statement "printf(" %8d",uVar9);" (call_expression "printf(" %8d",uVar9)" identifier (argument_list "(" %8d",uVar9)" ( (string_literal "" %8d"" " string_content ") , identifier ))) ;)) }) (else_clause "else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }" else (compound_statement "{\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }" { (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" identifier = number_literal) ;) (if_statement "if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;" if (parenthesized_expression "((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))" ( (binary_expression "(pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar14 < pbVar1)" ( (binary_expression "pbVar14 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" ( (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar14" identifier = (binary_expression "(int)pbVar1 - (int)pbVar14" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar14" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00031bd5;" goto statement_identifier ;)) (if_statement "if (param_2 != 0) goto LAB_00031bf1;" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00031bf1;" goto statement_identifier ;)) (labeled_statement "LAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }" statement_identifier : (if_statement "if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }" if (parenthesized_expression "(pbVar11 + 4 < pbVar1)" ( (binary_expression "pbVar11 + 4 < pbVar1" (binary_expression "pbVar11 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);" statement_identifier : (expression_statement "uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);" (assignment_expression "uVar6 = (*DAT_00076b4c)(pbVar11,iVar8)" identifier = (call_expression "(*DAT_00076b4c)(pbVar11,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar11,iVar8)" ( identifier , identifier )))) ;)) (if_statement "if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }" if (parenthesized_expression "(7 < uVar6)" ( (binary_expression "7 < uVar6" number_literal < identifier) )) (compound_statement "{\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }" { (expression_statement "uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5)" identifier = (call_expression "dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5)" identifier (argument_list "(0,"Overlarge Dwarf section index detected: %u\n",5)" ( number_literal , (string_literal ""Overlarge Dwarf section index detected: %u\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar9,uVar6);" (call_expression "warn(uVar9,uVar6)" identifier (argument_list "(uVar9,uVar6)" ( identifier , identifier ))) ;) (goto_statement "goto LAB_00031b71;" goto statement_identifier ;) })) }) (else_clause "else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }" else (compound_statement "{\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }" { (if_statement "if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;" if (parenthesized_expression "((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         )" ( (binary_expression "(pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar11 < pbVar1)" ( (binary_expression "pbVar11 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)" ( (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar11" identifier = (binary_expression "(int)pbVar1 - (int)pbVar11" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar11" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00031c15;" goto statement_identifier ;)) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) })))) (expression_statement "local_8c[uVar6 * 2 + 2] = uVar9;" (assignment_expression "local_8c[uVar6 * 2 + 2] = uVar9" (subscript_expression "local_8c[uVar6 * 2 + 2]" identifier [ (binary_expression "uVar6 * 2 + 2" (binary_expression "uVar6 * 2" identifier * number_literal) + number_literal) ]) = identifier) ;) (expression_statement "local_8c[uVar6 * 2 + 3] = 0;" (assignment_expression "local_8c[uVar6 * 2 + 3] = 0" (subscript_expression "local_8c[uVar6 * 2 + 3]" identifier [ (binary_expression "uVar6 * 2 + 3" (binary_expression "uVar6 * 2" identifier * number_literal) + number_literal) ]) = number_literal) ;) }))) (labeled_statement "LAB_00031b71:\n                  pbVar11 = pbVar11 + 4;" statement_identifier : (expression_statement "pbVar11 = pbVar11 + 4;" (assignment_expression "pbVar11 = pbVar11 + 4" identifier = (binary_expression "pbVar11 + 4" identifier + number_literal)) ;)) (expression_statement "pbVar14 = pbVar14 + 4;" (assignment_expression "pbVar14 = pbVar14 + 4" identifier = (binary_expression "pbVar14 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_b4 < local_b8)" ( (binary_expression "local_b4 < local_b8" identifier < identifier) )) ;) (if_statement "if (param_2 == 0) goto LAB_00031a20;" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00031a20;" goto statement_identifier ;)) })) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) }))) })) }) (else_clause "else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;" else (if_statement "if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;" if (parenthesized_expression "((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))" ( (binary_expression "(pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar15 < pbVar1)" ( (binary_expression "pbVar15 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8)" ( (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar15" identifier = (binary_expression "(int)pbVar1 - (int)pbVar15" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar15" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00031a7a;" goto statement_identifier ;)))) (labeled_statement "LAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);" statement_identifier : (expression_statement "local_a4 = (undefined4 *)((int)local_a4 + 1);" (assignment_expression "local_a4 = (undefined4 *)((int)local_a4 + 1)" identifier = (cast_expression "(undefined4 *)((int)local_a4 + 1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_a4 + 1)" ( (binary_expression "(int)local_a4 + 1" (cast_expression "(int)local_a4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;)) (expression_statement "pbVar14 = pbVar12;" (assignment_expression "pbVar14 = pbVar12" identifier = identifier) ;) (expression_statement "pbVar15 = pbVar15 + 4;" (assignment_expression "pbVar15 = pbVar15 + 4" identifier = (binary_expression "pbVar15 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_a4 < local_bc)" ( (binary_expression "local_a4 < local_bc" identifier < identifier) )) ;) (if_statement "if (param_2 != 0) goto LAB_00032214;" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00032214;" goto statement_identifier ;)) })) (if_statement "if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }" if (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" ( (binary_expression "local_b8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }" { (labeled_statement "LAB_00031e1e:\n      uVar6 = 0;" statement_identifier : (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;)) (expression_statement "pbVar14 = local_a8;" (assignment_expression "pbVar14 = local_a8" identifier = identifier) ;) (do_statement "do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);" do (compound_statement "{\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      }" { (expression_statement "uVar6 = uVar6 + 1;" (assignment_expression "uVar6 = uVar6 + 1" identifier = (binary_expression "uVar6 + 1" identifier + number_literal)) ;) (if_statement "if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;" if (parenthesized_expression "(pbVar14 + 4 < pbVar1)" ( (binary_expression "pbVar14 + 4 < pbVar1" (binary_expression "pbVar14 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);" statement_identifier : (expression_statement "(*DAT_00076b4c)(pbVar14,iVar8);" (call_expression "(*DAT_00076b4c)(pbVar14,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar14,iVar8)" ( identifier , identifier ))) ;)) }) (else_clause "else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;" else (if_statement "if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;" if (parenthesized_expression "((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))" ( (binary_expression "(pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar14 < pbVar1)" ( (binary_expression "pbVar14 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" ( (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar14" identifier = (binary_expression "(int)pbVar1 - (int)pbVar14" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar14" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00031e67;" goto statement_identifier ;)))) (if_statement "if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }" { (expression_statement "uVar9 = FUN_0001e440();" (assignment_expression "uVar9 = FUN_0001e440()" identifier = (call_expression "FUN_0001e440()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf(" %8s",uVar9);" (call_expression "printf(" %8s",uVar9)" identifier (argument_list "(" %8s",uVar9)" ( (string_literal "" %8s"" " string_content ") , identifier ))) ;) })) (expression_statement "pbVar14 = pbVar14 + 4;" (assignment_expression "pbVar14 = pbVar14 + 4" identifier = (binary_expression "pbVar14 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar6 < local_b8)" ( (binary_expression "uVar6 < local_b8" identifier < identifier) )) ;) (if_statement "if (param_2 != 0) goto LAB_0003227a;" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0003227a;" goto statement_identifier ;)) })) (if_statement "if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }" if (parenthesized_expression "(local_bc == (undefined4 *)0x0)" ( (binary_expression "local_bc == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) }) (else_clause "else {\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }" else (compound_statement "{\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }" { (expression_statement "pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Offset table\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Offset table\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Offset table\n",5)" identifier (argument_list "(0,"  Offset table\n",5)" ( number_literal , (string_literal ""  Offset table\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7);" (call_expression "printf(pcVar7)" identifier (argument_list "(pcVar7)" ( identifier ))) ;) (if_statement "if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" if (parenthesized_expression "(bVar17 == bVar16)" ( (binary_expression "bVar17 == bVar16" identifier == identifier) )) (compound_statement "{\n      uVar9 = dcgettext(0,"signature",5);\n    }" { (expression_statement "uVar9 = dcgettext(0,"signature",5);" (assignment_expression "uVar9 = dcgettext(0,"signature",5)" identifier = (call_expression "dcgettext(0,"signature",5)" identifier (argument_list "(0,"signature",5)" ( number_literal , (string_literal ""signature"" " string_content ") , number_literal )))) ;) }) (else_clause "else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" else (compound_statement "{\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" { (expression_statement "uVar9 = dcgettext(0,"dwo_id",5);" (assignment_expression "uVar9 = dcgettext(0,"dwo_id",5)" identifier = (call_expression "dcgettext(0,"dwo_id",5)" identifier (argument_list "(0,"dwo_id",5)" ( number_literal , (string_literal ""dwo_id"" " string_content ") , number_literal )))) ;) }))) (expression_statement "printf("  slot  %-16s  ",uVar9);" (call_expression "printf("  slot  %-16s  ",uVar9)" identifier (argument_list "("  slot  %-16s  ",uVar9)" ( (string_literal ""  slot  %-16s  "" " string_content ") , identifier ))) ;) (expression_statement "pbVar14 = local_a8;" (assignment_expression "pbVar14 = local_a8" identifier = identifier) ;) (if_statement "if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }" if (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" ( (binary_expression "local_b8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }" { (do_statement "do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);" do (compound_statement "{\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      }" { (expression_statement "pbVar15 = pbVar14 + 4;" (assignment_expression "pbVar15 = pbVar14 + 4" identifier = (binary_expression "pbVar14 + 4" identifier + number_literal)) ;) (if_statement "if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;" if (parenthesized_expression "(pbVar15 < pbVar1)" ( (binary_expression "pbVar15 < pbVar1" identifier < identifier) )) (compound_statement "{\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (labeled_statement "LAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);" statement_identifier : (expression_statement "(*DAT_00076b4c)(pbVar14,iVar8);" (call_expression "(*DAT_00076b4c)(pbVar14,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar14,iVar8)" ( identifier , identifier ))) ;)) }) (else_clause "else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;" else (if_statement "if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;" if (parenthesized_expression "((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))" ( (binary_expression "(pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar14 < pbVar1)" ( (binary_expression "pbVar14 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" ( (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar14" identifier = (binary_expression "(int)pbVar1 - (int)pbVar14" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar14" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_000321db;" goto statement_identifier ;)))) (expression_statement "uVar9 = FUN_0001e440();" (assignment_expression "uVar9 = FUN_0001e440()" identifier = (call_expression "FUN_0001e440()" identifier (argument_list "()" ( )))) ;) (expression_statement "printf(" %8s",uVar9);" (call_expression "printf(" %8s",uVar9)" identifier (argument_list "(" %8s",uVar9)" ( (string_literal "" %8s"" " string_content ") , identifier ))) ;) (expression_statement "pbVar14 = pbVar15;" (assignment_expression "pbVar14 = pbVar15" identifier = identifier) ;) }) while (parenthesized_expression "(pbVar5 != pbVar15)" ( (binary_expression "pbVar5 != pbVar15" identifier != identifier) )) ;) })) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) (expression_statement "local_78 = (undefined4 *)0x0;" (assignment_expression "local_78 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;" if (parenthesized_expression "(local_bc != (undefined4 *)0x0)" ( (binary_expression "local_bc != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000319e5;" goto statement_identifier ;)) (expression_statement "local_78 = local_bc;" (assignment_expression "local_78 = local_bc" identifier = identifier) ;) (labeled_statement "LAB_00032214:\n    putchar(10);" statement_identifier : (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;)) (expression_statement "pcVar7 = (char *)dcgettext(0,"  Size table\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Size table\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Size table\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Size table\n",5)" identifier (argument_list "(0,"  Size table\n",5)" ( number_literal , (string_literal ""  Size table\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar7);" (call_expression "printf(pcVar7)" identifier (argument_list "(pcVar7)" ( identifier ))) ;) (if_statement "if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" if (parenthesized_expression "(bVar17 == bVar16)" ( (binary_expression "bVar17 == bVar16" identifier == identifier) )) (compound_statement "{\n      uVar9 = dcgettext(0,"signature",5);\n    }" { (expression_statement "uVar9 = dcgettext(0,"signature",5);" (assignment_expression "uVar9 = dcgettext(0,"signature",5)" identifier = (call_expression "dcgettext(0,"signature",5)" identifier (argument_list "(0,"signature",5)" ( number_literal , (string_literal ""signature"" " string_content ") , number_literal )))) ;) }) (else_clause "else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" else (compound_statement "{\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" { (expression_statement "uVar9 = dcgettext(0,"dwo_id",5);" (assignment_expression "uVar9 = dcgettext(0,"dwo_id",5)" identifier = (call_expression "dcgettext(0,"dwo_id",5)" identifier (argument_list "(0,"dwo_id",5)" ( number_literal , (string_literal ""dwo_id"" " string_content ") , number_literal )))) ;) }))) (expression_statement "printf("  slot  %-16s  ",uVar9);" (call_expression "printf("  slot  %-16s  ",uVar9)" identifier (argument_list "("  slot  %-16s  ",uVar9)" ( (string_literal ""  slot  %-16s  "" " string_content ") , identifier ))) ;) (if_statement "if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;" if (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" ( (binary_expression "local_b8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00031e1e;" goto statement_identifier ;)) (labeled_statement "LAB_0003227a:\n    putchar(10);" statement_identifier : (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;)) (if_statement "if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;" if (parenthesized_expression "(local_bc == (undefined4 *)0x0)" ( (binary_expression "local_bc == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000316b0;" goto statement_identifier ;)) }))) (expression_statement "local_b4 = (undefined4 *)0x0;" (assignment_expression "local_b4 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pbVar14 = local_b0;" (assignment_expression "pbVar14 = local_b0" identifier = identifier) ;) (do_statement "do {\n    if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }\n    if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined4 *)((int)local_b4 + 1);\n    local_88 = local_88 + 8;\n    pbVar14 = pbVar14 + 4;\n  } while (local_b4 < local_bc);" do (compound_statement "{\n    if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }\n    if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined4 *)((int)local_b4 + 1);\n    local_88 = local_88 + 8;\n    pbVar14 = pbVar14 + 4;\n  }" { (if_statement "if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }" if (parenthesized_expression "(pbVar1 < local_88 + 8)" ( (binary_expression "pbVar1 < local_88 + 8" identifier < (binary_expression "local_88 + 8" identifier + number_literal)) )) (compound_statement "{\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }" { (expression_statement "local_6c = 0;" (assignment_expression "local_6c = 0" identifier = number_literal) ;) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" identifier = number_literal) ;) (expression_statement "local_64 = 0;" (assignment_expression "local_64 = 0" identifier = number_literal) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) }) (else_clause "else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }" else (compound_statement "{\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }" { (expression_statement "FUN_000490b0(local_88,&local_6c,&local_64);" (call_expression "FUN_000490b0(local_88,&local_6c,&local_64)" identifier (argument_list "(local_88,&local_6c,&local_64)" ( identifier , (pointer_expression "&local_6c" & identifier) , (pointer_expression "&local_64" & identifier) ))) ;) }))) (if_statement "if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;" if (parenthesized_expression "(pbVar14 + 4 < pbVar1)" ( (binary_expression "pbVar14 + 4 < pbVar1" (binary_expression "pbVar14 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);" statement_identifier : (expression_statement "iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);" (assignment_expression "iVar8 = (*DAT_00076b4c)(pbVar14,iVar8)" identifier = (call_expression "(*DAT_00076b4c)(pbVar14,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar14,iVar8)" ( identifier , identifier )))) ;)) (if_statement "if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }" { (if_statement "if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }" { (if_statement "if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }" if (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" ( (binary_expression "local_b8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }" { (labeled_statement "LAB_00031f85:\n            local_b0 = (byte *)0x0;" statement_identifier : (expression_statement "local_b0 = (byte *)0x0;" (assignment_expression "local_b0 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;" (assignment_expression "pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98" identifier = (binary_expression "pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98" (binary_expression "pbVar5 + (iVar8 + 0x3fffffff) * uVar2" identifier + (binary_expression "(iVar8 + 0x3fffffff) * uVar2" (parenthesized_expression "(iVar8 + 0x3fffffff)" ( (binary_expression "iVar8 + 0x3fffffff" identifier + number_literal) )) * identifier)) + (binary_expression "uVar2 * local_98" identifier * identifier))) ;) (expression_statement "pbVar12 = local_a8;" (assignment_expression "pbVar12 = local_a8" identifier = identifier) ;) (do_statement "do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);" do (compound_statement "{\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            }" { (expression_statement "local_b0 = (byte *)((int)local_b0 + 1);" (assignment_expression "local_b0 = (byte *)((int)local_b0 + 1)" identifier = (cast_expression "(byte *)((int)local_b0 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + 1)" ( (binary_expression "(int)local_b0 + 1" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (if_statement "if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }" if (parenthesized_expression "(pbVar15 + 4 < pbVar1)" ( (binary_expression "pbVar15 + 4 < pbVar1" (binary_expression "pbVar15 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }" { (expression_statement "iVar10 = 4;" (assignment_expression "iVar10 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);" statement_identifier : (expression_statement "uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);" (assignment_expression "uVar9 = (*DAT_00076b4c)(pbVar15,iVar10)" identifier = (call_expression "(*DAT_00076b4c)(pbVar15,iVar10)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar15,iVar10)" ( identifier , identifier )))) ;)) }) (else_clause "else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }" else (compound_statement "{\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }" { (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" identifier = number_literal) ;) (if_statement "if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;" if (parenthesized_expression "((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))" ( (binary_expression "(pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8)" (parenthesized_expression "(pbVar15 < pbVar1)" ( (binary_expression "pbVar15 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8)" ( (comma_expression "iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8" (assignment_expression "iVar10 = (int)pbVar1 - (int)pbVar15" identifier = (binary_expression "(int)pbVar1 - (int)pbVar15" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar15" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar10 - 1U < 8" (binary_expression "iVar10 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00032035;" goto statement_identifier ;)) }))) (if_statement "if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }" { (if_statement "if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }" if (parenthesized_expression "(pbVar12 + 4 < pbVar1)" ( (binary_expression "pbVar12 + 4 < pbVar1" (binary_expression "pbVar12 + 4" identifier + number_literal) < identifier) )) (compound_statement "{\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }" { (expression_statement "iVar10 = 4;" (assignment_expression "iVar10 = 4" identifier = number_literal) ;) (labeled_statement "LAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);" statement_identifier : (expression_statement "uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);" (assignment_expression "uVar6 = (*DAT_00076b4c)(pbVar12,iVar10)" identifier = (call_expression "(*DAT_00076b4c)(pbVar12,iVar10)" (parenthesized_expression "(*DAT_00076b4c)" ( (pointer_expression "*DAT_00076b4c" * identifier) )) (argument_list "(pbVar12,iVar10)" ( identifier , identifier )))) ;)) (if_statement "if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }" if (parenthesized_expression "(7 < uVar6)" ( (binary_expression "7 < uVar6" number_literal < identifier) )) (compound_statement "{\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }" { (expression_statement "uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5)" identifier = (call_expression "dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5)" identifier (argument_list "(0,"Overlarge Dwarf section index detected: %u\n",5)" ( number_literal , (string_literal ""Overlarge Dwarf section index detected: %u\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar9,uVar6);" (call_expression "warn(uVar9,uVar6)" identifier (argument_list "(uVar9,uVar6)" ( identifier , identifier ))) ;) (goto_statement "goto LAB_00032001;" goto statement_identifier ;) })) }) (else_clause "else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }" else (compound_statement "{\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }" { (if_statement "if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;" if (parenthesized_expression "((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))" ( (binary_expression "(pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8)" (parenthesized_expression "(pbVar12 < pbVar1)" ( (binary_expression "pbVar12 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8)" ( (comma_expression "iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8" (assignment_expression "iVar10 = (int)pbVar1 - (int)pbVar12" identifier = (binary_expression "(int)pbVar1 - (int)pbVar12" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar12" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar10 - 1U < 8" (binary_expression "iVar10 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00032055;" goto statement_identifier ;)) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) }))) (expression_statement "local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;" (assignment_expression "local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9" (subscript_expression "local_78[iVar8 * 0x1a + (uVar6 - 8)]" identifier [ (binary_expression "iVar8 * 0x1a + (uVar6 - 8)" (binary_expression "iVar8 * 0x1a" identifier * number_literal) + (parenthesized_expression "(uVar6 - 8)" ( (binary_expression "uVar6 - 8" identifier - number_literal) ))) ]) = identifier) ;) }) (else_clause "else {\n                printf(" %8d",uVar9);\n              }" else (compound_statement "{\n                printf(" %8d",uVar9);\n              }" { (expression_statement "printf(" %8d",uVar9);" (call_expression "printf(" %8d",uVar9)" identifier (argument_list "(" %8d",uVar9)" ( (string_literal "" %8d"" " string_content ") , identifier ))) ;) }))) (labeled_statement "LAB_00032001:\n              pbVar12 = pbVar12 + 4;" statement_identifier : (expression_statement "pbVar12 = pbVar12 + 4;" (assignment_expression "pbVar12 = pbVar12 + 4" identifier = (binary_expression "pbVar12 + 4" identifier + number_literal)) ;)) (expression_statement "pbVar15 = pbVar15 + 4;" (assignment_expression "pbVar15 = pbVar15 + 4" identifier = (binary_expression "pbVar15 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_b0 < local_b8)" ( (binary_expression "local_b0 < local_b8" identifier < identifier) )) ;) (if_statement "if (param_2 != 0) goto LAB_0003201d;" if (parenthesized_expression "(param_2 != 0)" ( (binary_expression "param_2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0003201d;" goto statement_identifier ;)) })) }) (else_clause "else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }" else (compound_statement "{\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }" { (expression_statement "uVar9 = FUN_0001eb80(local_64,local_60,local_5c);" (assignment_expression "uVar9 = FUN_0001eb80(local_64,local_60,local_5c)" identifier = (call_expression "FUN_0001eb80(local_64,local_60,local_5c)" identifier (argument_list "(local_64,local_60,local_5c)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [%3d] 0x%s",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [%3d] 0x%s",5)" identifier (argument_list "(0,"  [%3d] 0x%s",5)" ( number_literal , (string_literal ""  [%3d] 0x%s"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar7,local_b4,uVar9);" (call_expression "printf(pcVar7,local_b4,uVar9)" identifier (argument_list "(pcVar7,local_b4,uVar9)" ( identifier , identifier , identifier ))) ;) (if_statement "if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;" if (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" ( (binary_expression "local_b8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00031f85;" goto statement_identifier ;)) (labeled_statement "LAB_0003201d:\n          putchar(10);" statement_identifier : (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;)) }))) })) }) (else_clause "else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;" else (if_statement "if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;" if (parenthesized_expression "((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))" ( (binary_expression "(pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar14 < pbVar1)" ( (binary_expression "pbVar14 < pbVar1" identifier < identifier) )) && (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" ( (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar14" identifier = (binary_expression "(int)pbVar1 - (int)pbVar14" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar14" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_00031f4a;" goto statement_identifier ;)))) (expression_statement "local_b4 = (undefined4 *)((int)local_b4 + 1);" (assignment_expression "local_b4 = (undefined4 *)((int)local_b4 + 1)" identifier = (cast_expression "(undefined4 *)((int)local_b4 + 1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b4 + 1)" ( (binary_expression "(int)local_b4 + 1" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "local_88 = local_88 + 8;" (assignment_expression "local_88 = local_88 + 8" identifier = (binary_expression "local_88 + 8" identifier + number_literal)) ;) (expression_statement "pbVar14 = pbVar14 + 4;" (assignment_expression "pbVar14 = pbVar14 + 4" identifier = (binary_expression "pbVar14 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_b4 < local_bc)" ( (binary_expression "local_b4 < local_bc" identifier < identifier) )) ;) (labeled_statement "LAB_000316a3:\n  if (param_2 == 0) {\n    return 1;\n  }" statement_identifier : (if_statement "if (param_2 == 0) {\n    return 1;\n  }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n    return 1;\n  }" { (return_statement "return 1;" return number_literal ;) }))) (labeled_statement "LAB_000316b0:\n  putchar(10);" statement_identifier : (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;)) (return_statement "return 1;" return number_literal ;) })))
(translation_unit (function_definition TYPE (ERROR IDENT) (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression 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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) || (binary_expression (binary_expression (parenthesized_expression ( IDENT )) - (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) < (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) < IDENT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression LIT < (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - LIT))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })))) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (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) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement 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) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (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 ))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (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 escape_sequence ") , LIT ))))) ;) (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 escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (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 = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return 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 ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) IDENT) , IDENT )))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) == IDENT) )) (compound_statement { (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 = (binary_expression IDENT < (binary_expression IDENT + (binary_expression (binary_expression IDENT * IDENT) * LIT)))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (binary_expression IDENT + (binary_expression (binary_expression IDENT * IDENT) * LIT)))) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (goto_statement goto 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 , IDENT ))) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (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 = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (return_statement return LIT ;) }))) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT * LIT) )))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) )) (argument_list ( IDENT , IDENT ))))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , LIT )))) ;)) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }))) }) (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 TYPE) ) IDENT) - LIT)) , (binary_expression LIT < IDENT)) ))) )) (goto_statement goto 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 ( IDENT , IDENT , IDENT , IDENT )))) ;) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) || (parenthesized_expression ( (binary_expression IDENT < IDENT) ))) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT == IDENT) && (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ))) )) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( BOOL )) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (labeled_statement statement_identifier : (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 = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , (string_literal " string_content escape_sequence ") , IDENT , LIT )))) ;) (goto_statement goto statement_identifier ;) })) (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 = (string_literal " string_content escape_sequence ")) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , LIT )))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;)) (return_statement return LIT ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT < (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 = LIT) ;) (goto_statement goto statement_identifier ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) )) || (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < 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 (cast_expression ( (type_descriptor TYPE) ) 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 = (binary_expression IDENT + (binary_expression IDENT * LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression IDENT * LIT)) < IDENT) )) (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 ))) ;) (return_statement return LIT ;) })) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , 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 , IDENT , IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (do_statement do (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 (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression 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 ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (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 = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (break_statement break ;)) }) while (parenthesized_expression ( BOOL )) ;) })) (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 = (string_literal " string_content escape_sequence ")) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (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 = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) = LIT) ;) }) (else_clause else (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 ))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })))) (goto_statement goto statement_identifier ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (break_statement break ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;))) })) (expression_statement (assignment_expression IDENT = (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , LIT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , LIT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (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) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , (pointer_expression & IDENT) ))) ;) }))) (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 )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (goto_statement goto statement_identifier ;) })) (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 = (binary_expression (binary_expression IDENT + (binary_expression IDENT * LIT)) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT + LIT) )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))) )) || (parenthesized_expression ( (binary_expression IDENT < IDENT) ))) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT + LIT) )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))) )) || (parenthesized_expression ( (binary_expression IDENT < IDENT) ))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;)) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , 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 , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression IDENT * LIT)) + LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 TYPE) ) IDENT) + LIT) )))) ;) (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 )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , 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 TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) , (binary_expression (binary_expression IDENT - LIT) < LIT)) ))) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (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 )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (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 ))) ;) (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) , (binary_expression (binary_expression IDENT - LIT) < LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) })))) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (binary_expression IDENT * LIT) + LIT) ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (binary_expression IDENT * LIT) + LIT) ]) = LIT) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (call_expression IDENT (argument_list ( 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 TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) , (binary_expression (binary_expression IDENT - LIT) < LIT)) ))) )) (goto_statement goto statement_identifier ;)))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (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 (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;)) }) (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 TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) , (binary_expression (binary_expression IDENT - LIT) < LIT)) ))) )) (goto_statement goto statement_identifier ;)))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (return_statement return LIT ;) })) }) (else_clause else (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 escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) }))) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (do_statement do (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) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;)) }) (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 TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) , (binary_expression (binary_expression IDENT - LIT) < LIT)) ))) )) (goto_statement goto statement_identifier ;)))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( 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 ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) }))) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < (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 = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , (pointer_expression & IDENT) ))) ;) }))) (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 )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (parenthesized_expression ( (binary_expression IDENT + LIT) )) * IDENT)) + (binary_expression IDENT * IDENT))) ;) (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 TYPE) ) IDENT) + LIT) )))) ;) (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 TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) , (binary_expression (binary_expression IDENT - LIT) < LIT)) ))) )) (goto_statement goto statement_identifier ;)) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (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 )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (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 ))) ;) (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) , (binary_expression (binary_expression IDENT - LIT) < LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (binary_expression IDENT * LIT) + (parenthesized_expression ( (binary_expression IDENT - LIT) ))) ]) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , 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 , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( 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 TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) , (binary_expression (binary_expression IDENT - LIT) < LIT)) ))) )) (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 TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return LIT ;) }))) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;)) (return_statement return LIT ;) })))
(function_definition "undefined4 __regparm3 FUN_00031280(int param_1,int param_2)\n\n{\n  byte *pbVar1;\n  uint uVar2;\n  undefined4 *puVar3;\n  undefined4 *puVar4;\n  byte *pbVar5;\n  uint uVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 uVar9;\n  byte *extraout_ECX;\n  int iVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  uint uVar13;\n  byte *pbVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  int *piVar19;\n  undefined4 *local_bc;\n  undefined4 *local_b8;\n  undefined4 *local_b4;\n  byte *local_b0;\n  uint local_ac;\n  byte *local_a8;\n  undefined4 *local_a4;\n  uint local_98;\n  undefined4 *local_8c;\n  byte *local_88;\n  undefined4 *local_78;\n  int local_6c;\n  int local_68;\n  int local_64;\n  int local_60;\n  undefined1 local_5c [72];\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x31289;\n  pbVar14 = *(byte **)(param_1 + 0x10);\n  puVar3 = *(undefined4 **)(param_1 + 0x1c);\n  if (pbVar14 == (byte *)0x0) {\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is empty\n";\n  }\n  else {\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }\nLAB_0003156a:\n  local_bc = (undefined4 *)0x5;\n  uVar9 = dcgettext(0,pcVar7,5);\nLAB_000314f3:\n  warn(uVar9,pbVar14,local_bc);\n  return 0;\nLAB_0003165a:\n  if (pbVar1 < local_88 + 8) {\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }\n  piVar19 = &local_64;\n  FUN_000490b0(local_88,&local_6c,piVar19);\n  if ((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)) {\n    iVar8 = 4;\n    if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }\n    if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }\n    if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }\nLAB_0003168c:\n  local_b8 = (undefined4 *)((int)local_b8 + 1);\n  local_88 = local_88 + 8;\n  local_b0 = local_b0 + 4;\n  if (local_bc <= local_b8) goto LAB_000316a3;\n  goto LAB_0003165a;\nLAB_000317d8:\n  if (param_2 == 0) {\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }\n  else {\n    putchar(10);\n  }\n  goto LAB_0003168c;\n  while( true ) {\n    iVar8 = iVar8 + -1;\n    bVar16 = *pbVar14 < *pbVar15;\n    bVar17 = *pbVar14 == *pbVar15;\n    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;\n    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n    if (!bVar17) break;\ncode_r0x00031991:\n    if (iVar8 == 0) break;\n  }\n  bVar17 = !bVar16 && !bVar17;\n  if (param_2 == 0) {\n    if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }\n    if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }\n  }\n  else {\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }\n  local_b4 = (undefined4 *)0x0;\n  pbVar14 = local_b0;\n  do {\n    if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }\n    if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined4 *)((int)local_b4 + 1);\n    local_88 = local_88 + 8;\n    pbVar14 = pbVar14 + 4;\n  } while (local_b4 < local_bc);\nLAB_000316a3:\n  if (param_2 == 0) {\n    return 1;\n  }\nLAB_000316b0:\n  putchar(10);\n  return 1;\n}" (type_identifier "undefined4") (ERROR "__regparm3" (identifier "__regparm3")) (function_declarator "FUN_00031280(int param_1,int param_2)" (identifier "FUN_00031280") (parameter_list "(int param_1,int param_2)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) (, ",") (parameter_declaration "int param_2" (primitive_type "int") (identifier "param_2")) () ")"))) (compound_statement "{\n  byte *pbVar1;\n  uint uVar2;\n  undefined4 *puVar3;\n  undefined4 *puVar4;\n  byte *pbVar5;\n  uint uVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 uVar9;\n  byte *extraout_ECX;\n  int iVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  uint uVar13;\n  byte *pbVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  int *piVar19;\n  undefined4 *local_bc;\n  undefined4 *local_b8;\n  undefined4 *local_b4;\n  byte *local_b0;\n  uint local_ac;\n  byte *local_a8;\n  undefined4 *local_a4;\n  uint local_98;\n  undefined4 *local_8c;\n  byte *local_88;\n  undefined4 *local_78;\n  int local_6c;\n  int local_68;\n  int local_64;\n  int local_60;\n  undefined1 local_5c [72];\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x31289;\n  pbVar14 = *(byte **)(param_1 + 0x10);\n  puVar3 = *(undefined4 **)(param_1 + 0x1c);\n  if (pbVar14 == (byte *)0x0) {\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is empty\n";\n  }\n  else {\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }\nLAB_0003156a:\n  local_bc = (undefined4 *)0x5;\n  uVar9 = dcgettext(0,pcVar7,5);\nLAB_000314f3:\n  warn(uVar9,pbVar14,local_bc);\n  return 0;\nLAB_0003165a:\n  if (pbVar1 < local_88 + 8) {\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }\n  piVar19 = &local_64;\n  FUN_000490b0(local_88,&local_6c,piVar19);\n  if ((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)) {\n    iVar8 = 4;\n    if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }\n    if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }\n    if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }\nLAB_0003168c:\n  local_b8 = (undefined4 *)((int)local_b8 + 1);\n  local_88 = local_88 + 8;\n  local_b0 = local_b0 + 4;\n  if (local_bc <= local_b8) goto LAB_000316a3;\n  goto LAB_0003165a;\nLAB_000317d8:\n  if (param_2 == 0) {\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }\n  else {\n    putchar(10);\n  }\n  goto LAB_0003168c;\n  while( true ) {\n    iVar8 = iVar8 + -1;\n    bVar16 = *pbVar14 < *pbVar15;\n    bVar17 = *pbVar14 == *pbVar15;\n    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;\n    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n    if (!bVar17) break;\ncode_r0x00031991:\n    if (iVar8 == 0) break;\n  }\n  bVar17 = !bVar16 && !bVar17;\n  if (param_2 == 0) {\n    if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }\n    if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }\n  }\n  else {\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }\n  local_b4 = (undefined4 *)0x0;\n  pbVar14 = local_b0;\n  do {\n    if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }\n    if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined4 *)((int)local_b4 + 1);\n    local_88 = local_88 + 8;\n    pbVar14 = pbVar14 + 4;\n  } while (local_b4 < local_bc);\nLAB_000316a3:\n  if (param_2 == 0) {\n    return 1;\n  }\nLAB_000316b0:\n  putchar(10);\n  return 1;\n}" ({ "{") (declaration "byte *pbVar1;" (type_identifier "byte") (pointer_declarator "*pbVar1" (* "*") (identifier "pbVar1")) (; ";")) (declaration "uint uVar2;" (type_identifier "uint") (identifier "uVar2") (; ";")) (declaration "undefined4 *puVar3;" (type_identifier "undefined4") (pointer_declarator "*puVar3" (* "*") (identifier "puVar3")) (; ";")) (declaration "undefined4 *puVar4;" (type_identifier "undefined4") (pointer_declarator "*puVar4" (* "*") (identifier "puVar4")) (; ";")) (declaration "byte *pbVar5;" (type_identifier "byte") (pointer_declarator "*pbVar5" (* "*") (identifier "pbVar5")) (; ";")) (declaration "uint uVar6;" (type_identifier "uint") (identifier "uVar6") (; ";")) (declaration "char *pcVar7;" (primitive_type "char") (pointer_declarator "*pcVar7" (* "*") (identifier "pcVar7")) (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "undefined4 uVar9;" (type_identifier "undefined4") (identifier "uVar9") (; ";")) (declaration "byte *extraout_ECX;" (type_identifier "byte") (pointer_declarator "*extraout_ECX" (* "*") (identifier "extraout_ECX")) (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "byte *pbVar11;" (type_identifier "byte") (pointer_declarator "*pbVar11" (* "*") (identifier "pbVar11")) (; ";")) (declaration "byte *pbVar12;" (type_identifier "byte") (pointer_declarator "*pbVar12" (* "*") (identifier "pbVar12")) (; ";")) (declaration "uint uVar13;" (type_identifier "uint") (identifier "uVar13") (; ";")) (declaration "byte *pbVar14;" (type_identifier "byte") (pointer_declarator "*pbVar14" (* "*") (identifier "pbVar14")) (; ";")) (declaration "byte *pbVar15;" (type_identifier "byte") (pointer_declarator "*pbVar15" (* "*") (identifier "pbVar15")) (; ";")) (declaration "bool bVar16;" (primitive_type "bool") (identifier "bVar16") (; ";")) (declaration "bool bVar17;" (primitive_type "bool") (identifier "bVar17") (; ";")) (declaration "byte bVar18;" (type_identifier "byte") (identifier "bVar18") (; ";")) (declaration "int *piVar19;" (primitive_type "int") (pointer_declarator "*piVar19" (* "*") (identifier "piVar19")) (; ";")) (declaration "undefined4 *local_bc;" (type_identifier "undefined4") (pointer_declarator "*local_bc" (* "*") (identifier "local_bc")) (; ";")) (declaration "undefined4 *local_b8;" (type_identifier "undefined4") (pointer_declarator "*local_b8" (* "*") (identifier "local_b8")) (; ";")) (declaration "undefined4 *local_b4;" (type_identifier "undefined4") (pointer_declarator "*local_b4" (* "*") (identifier "local_b4")) (; ";")) (declaration "byte *local_b0;" (type_identifier "byte") (pointer_declarator "*local_b0" (* "*") (identifier "local_b0")) (; ";")) (declaration "uint local_ac;" (type_identifier "uint") (identifier "local_ac") (; ";")) (declaration "byte *local_a8;" (type_identifier "byte") (pointer_declarator "*local_a8" (* "*") (identifier "local_a8")) (; ";")) (declaration "undefined4 *local_a4;" (type_identifier "undefined4") (pointer_declarator "*local_a4" (* "*") (identifier "local_a4")) (; ";")) (declaration "uint local_98;" (type_identifier "uint") (identifier "local_98") (; ";")) (declaration "undefined4 *local_8c;" (type_identifier "undefined4") (pointer_declarator "*local_8c" (* "*") (identifier "local_8c")) (; ";")) (declaration "byte *local_88;" (type_identifier "byte") (pointer_declarator "*local_88" (* "*") (identifier "local_88")) (; ";")) (declaration "undefined4 *local_78;" (type_identifier "undefined4") (pointer_declarator "*local_78" (* "*") (identifier "local_78")) (; ";")) (declaration "int local_6c;" (primitive_type "int") (identifier "local_6c") (; ";")) (declaration "int local_68;" (primitive_type "int") (identifier "local_68") (; ";")) (declaration "int local_64;" (primitive_type "int") (identifier "local_64") (; ";")) (declaration "int local_60;" (primitive_type "int") (identifier "local_60") (; ";")) (declaration "undefined1 local_5c [72];" (type_identifier "undefined1") (array_declarator "local_5c [72]" (identifier "local_5c") ([ "[") (number_literal "72") (] "]")) (; ";")) (declaration "undefined4 uStack_14;" (type_identifier "undefined4") (identifier "uStack_14") (; ";")) (expression_statement "bVar18 = 0;" (assignment_expression "bVar18 = 0" (identifier "bVar18") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_14 = 0x31289;" (assignment_expression "uStack_14 = 0x31289" (identifier "uStack_14") (= "=") (number_literal "0x31289")) (; ";")) (expression_statement "pbVar14 = *(byte **)(param_1 + 0x10);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 0x10)" (identifier "pbVar14") (= "=") (pointer_expression "*(byte **)(param_1 + 0x10)" (* "*") (cast_expression "(byte **)(param_1 + 0x10)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x10)" (( "(") (binary_expression "param_1 + 0x10" (identifier "param_1") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "puVar3 = *(undefined4 **)(param_1 + 0x1c);" (assignment_expression "puVar3 = *(undefined4 **)(param_1 + 0x1c)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined4 **)(param_1 + 0x1c)" (* "*") (cast_expression "(undefined4 **)(param_1 + 0x1c)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x1c)" (( "(") (binary_expression "param_1 + 0x1c" (identifier "param_1") (+ "+") (number_literal "0x1c")) () ")"))))) (; ";")) (if_statement "if (pbVar14 == (byte *)0x0) {\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is empty\n";\n  }\n  else {\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }" (if "if") (parenthesized_expression "(pbVar14 == (byte *)0x0)" (( "(") (binary_expression "pbVar14 == (byte *)0x0" (identifier "pbVar14") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is empty\n";\n  }" ({ "{") (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" (identifier "pbVar14") (= "=") (pointer_expression "*(byte **)(param_1 + 8)" (* "*") (cast_expression "(byte **)(param_1 + 8)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "pcVar7 = "Section %s is empty\n";" (assignment_expression "pcVar7 = "Section %s is empty\n"" (identifier "pcVar7") (= "=") (string_literal ""Section %s is empty\n"" (" """) (string_content "Section %s is empty") (escape_sequence "\n") (" """))) (; ";")) (} "}")) (else_clause "else {\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }" (else "else") (compound_statement "{\n    if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s is too small to contain a CU/TU header\n";\n  }" ({ "{") (if_statement "if (*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3))" (( "(") (binary_expression "*(int *)(param_1 + 0x20) != 0 ||\n        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)" (binary_expression "*(int *)(param_1 + 0x20) != 0" (pointer_expression "*(int *)(param_1 + 0x20)" (* "*") (cast_expression "(int *)(param_1 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")")))) (!= "!=") (number_literal "0")) (|| "||") (binary_expression "(uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)" (binary_expression "(uint)-*(int *)(param_1 + 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (- "-") (pointer_expression "*(int *)(param_1 + 0x20)" (* "*") (cast_expression "(int *)(param_1 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")"))))) (< "<") (call_expression "(uint)((undefined4 *)0x17 < puVar3)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((undefined4 *)0x17 < puVar3)" (( "(") (binary_expression "(undefined4 *)0x17 < puVar3" (cast_expression "(undefined4 *)0x17" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x17")) (< "<") (identifier "puVar3")) () ")"))))) () ")")) (compound_statement "{\n      local_b0 = pbVar14 + 8;\n      pbVar1 = pbVar14 + (int)puVar3;\n      pbVar5 = pbVar14 + 4;\n      if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      local_bc = &DAT_00076b4c;\n      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);\n      if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }\n      if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }\n      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;\n      pbVar5 = pbVar14 + 0xc;\n      local_b8 = (undefined4 *)0x0;\n      if (pbVar5 < pbVar1) goto LAB_000313e1;\nLAB_00031338:\n      local_b0 = pbVar14 + 0x10;\n      if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }\n      local_98 = 0;\nLAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }\n      local_bc = (undefined4 *)0x0;\nLAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);\n      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);\n      goto LAB_000314f3;\n    }" ({ "{") (expression_statement "local_b0 = pbVar14 + 8;" (assignment_expression "local_b0 = pbVar14 + 8" (identifier "local_b0") (= "=") (binary_expression "pbVar14 + 8" (identifier "pbVar14") (+ "+") (number_literal "8"))) (; ";")) (expression_statement "pbVar1 = pbVar14 + (int)puVar3;" (assignment_expression "pbVar1 = pbVar14 + (int)puVar3" (identifier "pbVar1") (= "=") (binary_expression "pbVar14 + (int)puVar3" (identifier "pbVar14") (+ "+") (cast_expression "(int)puVar3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar3")))) (; ";")) (expression_statement "pbVar5 = pbVar14 + 4;" (assignment_expression "pbVar5 = pbVar14 + 4" (identifier "pbVar5") (= "=") (binary_expression "pbVar14 + 4" (identifier "pbVar14") (+ "+") (number_literal "4"))) (; ";")) (if_statement "if (pbVar5 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n      }\n      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" (if "if") (parenthesized_expression "(pbVar5 < pbVar1)" (( "(") (binary_expression "pbVar5 < pbVar1" (identifier "pbVar5") (< "<") (identifier "pbVar1")) () ")")) (compound_statement "{\n        puVar4 = (undefined4 *)0x4;\n      }" ({ "{") (expression_statement "puVar4 = (undefined4 *)0x4;" (assignment_expression "puVar4 = (undefined4 *)0x4" (identifier "puVar4") (= "=") (cast_expression "(undefined4 *)0x4" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x4"))) (; ";")) (} "}")) (else_clause "else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" (else "else") (if_statement "if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" (if "if") (parenthesized_expression "((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U))" (( "(") (binary_expression "(pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)" (parenthesized_expression "(pbVar1 <= pbVar14)" (( "(") (binary_expression "pbVar1 <= pbVar14" (identifier "pbVar1") (<= "<=") (identifier "pbVar14")) () ")")) (|| "||") (parenthesized_expression "(puVar4 = puVar3, 7 < (int)puVar3 - 1U)" (( "(") (comma_expression "puVar4 = puVar3, 7 < (int)puVar3 - 1U" (assignment_expression "puVar4 = puVar3" (identifier "puVar4") (= "=") (identifier "puVar3")) (, ",") (binary_expression "7 < (int)puVar3 - 1U" (number_literal "7") (< "<") (binary_expression "(int)puVar3 - 1U" (cast_expression "(int)puVar3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar3")) (- "-") (number_literal "1U")))) () ")"))) () ")")) (compound_statement "{\n        local_ac = 0;\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" ({ "{") (expression_statement "local_ac = 0;" (assignment_expression "local_ac = 0" (identifier "local_ac") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_b8 = (undefined4 *)0x0;" (assignment_expression "local_b8 = (undefined4 *)0x0" (identifier "local_b8") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_000313d0;" (goto "goto") (statement_identifier "LAB_000313d0") (; ";")) (} "}"))))) (expression_statement "local_bc = &DAT_00076b4c;" (assignment_expression "local_bc = &DAT_00076b4c" (identifier "local_bc") (= "=") (pointer_expression "&DAT_00076b4c" (& "&") (identifier "DAT_00076b4c"))) (; ";")) (expression_statement "local_ac = (*DAT_00076b4c)(pbVar14,puVar4);" (assignment_expression "local_ac = (*DAT_00076b4c)(pbVar14,puVar4)" (identifier "local_ac") (= "=") (call_expression "(*DAT_00076b4c)(pbVar14,puVar4)" (parenthesized_expression "(*DAT_00076b4c)" (( "(") (pointer_expression "*DAT_00076b4c" (* "*") (identifier "DAT_00076b4c")) () ")")) (argument_list "(pbVar14,puVar4)" (( "(") (identifier "pbVar14") (, ",") (identifier "puVar4") () ")")))) (; ";")) (if_statement "if (local_ac < 2) {\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" (if "if") (parenthesized_expression "(local_ac < 2)" (( "(") (binary_expression "local_ac < 2" (identifier "local_ac") (< "<") (number_literal "2")) () ")")) (compound_statement "{\n        local_b8 = (undefined4 *)0x0;\n        goto LAB_000313d0;\n      }" ({ "{") (expression_statement "local_b8 = (undefined4 *)0x0;" (assignment_expression "local_b8 = (undefined4 *)0x0" (identifier "local_b8") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_000313d0;" (goto "goto") (statement_identifier "LAB_000313d0") (; ";")) (} "}"))) (if_statement "if (local_b0 < pbVar1) {\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }" (if "if") (parenthesized_expression "(local_b0 < pbVar1)" (( "(") (binary_expression "local_b0 < pbVar1" (identifier "local_b0") (< "<") (identifier "pbVar1")) () ")")) (compound_statement "{\n        puVar4 = (undefined4 *)0x4;\n        goto LAB_0003153d;\n      }" ({ "{") (expression_statement "puVar4 = (undefined4 *)0x4;" (assignment_expression "puVar4 = (undefined4 *)0x4" (identifier "puVar4") (= "=") (cast_expression "(undefined4 *)0x4" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x4"))) (; ";")) (goto_statement "goto LAB_0003153d;" (goto "goto") (statement_identifier "LAB_0003153d") (; ";")) (} "}"))) (if_statement "if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;" (if "if") (parenthesized_expression "((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8))" (( "(") (binary_expression "(pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)" (parenthesized_expression "(pbVar5 < pbVar1)" (( "(") (binary_expression "pbVar5 < pbVar1" (identifier "pbVar5") (< "<") (identifier "pbVar1")) () ")")) (&& "&&") (parenthesized_expression "((int)puVar3 - 5U < 8)" (( "(") (binary_expression "(int)puVar3 - 5U < 8" (binary_expression "(int)puVar3 - 5U" (cast_expression "(int)puVar3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar3")) (- "-") (number_literal "5U")) (< "<") (number_literal "8")) () ")"))) () ")")) (goto_statement "goto LAB_000323ac;" (goto "goto") (statement_identifier "LAB_000323ac") (; ";"))) (expression_statement "pbVar5 = pbVar14 + 0xc;" (assignment_expression "pbVar5 = pbVar14 + 0xc" (identifier "pbVar5") (= "=") (binary_expression "pbVar14 + 0xc" (identifier "pbVar14") (+ "+") (number_literal "0xc"))) (; ";")) (expression_statement "local_b8 = (undefined4 *)0x0;" (assignment_expression "local_b8 = (undefined4 *)0x0" (identifier "local_b8") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (pbVar5 < pbVar1) goto LAB_000313e1;" (if "if") (parenthesized_expression "(pbVar5 < pbVar1)" (( "(") (binary_expression "pbVar5 < pbVar1" (identifier "pbVar5") (< "<") (identifier "pbVar1")) () ")")) (goto_statement "goto LAB_000313e1;" (goto "goto") (statement_identifier "LAB_000313e1") (; ";"))) (labeled_statement "LAB_00031338:\n      local_b0 = pbVar14 + 0x10;" (statement_identifier "LAB_00031338") (: ":") (expression_statement "local_b0 = pbVar14 + 0x10;" (assignment_expression "local_b0 = pbVar14 + 0x10" (identifier "local_b0") (= "=") (binary_expression "pbVar14 + 0x10" (identifier "pbVar14") (+ "+") (number_literal "0x10"))) (; ";"))) (if_statement "if (local_b0 < pbVar1) {\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }" (if "if") (parenthesized_expression "(local_b0 < pbVar1)" (( "(") (binary_expression "local_b0 < pbVar1" (identifier "local_b0") (< "<") (identifier "pbVar1")) () ")")) (compound_statement "{\n        local_98 = 0;\n        puVar3 = (undefined4 *)0x4;\n        goto LAB_0003148f;\n      }" ({ "{") (expression_statement "local_98 = 0;" (assignment_expression "local_98 = 0" (identifier "local_98") (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar3 = (undefined4 *)0x4;" (assignment_expression "puVar3 = (undefined4 *)0x4" (identifier "puVar3") (= "=") (cast_expression "(undefined4 *)0x4" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x4"))) (; ";")) (goto_statement "goto LAB_0003148f;" (goto "goto") (statement_identifier "LAB_0003148f") (; ";")) (} "}"))) (expression_statement "local_98 = 0;" (assignment_expression "local_98 = 0" (identifier "local_98") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_0003134f:\n      if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }" (statement_identifier "LAB_0003134f") (: ":") (if_statement "if (pbVar14 <= local_b0) {\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }" (if "if") (parenthesized_expression "(pbVar14 <= local_b0)" (( "(") (binary_expression "pbVar14 <= local_b0" (identifier "pbVar14") (<= "<=") (identifier "local_b0")) () ")")) (compound_statement "{\n        local_88 = local_b0;\n        local_a8 = local_b0;\n        local_bc = (undefined4 *)0x0;\n        do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );\n      }" ({ "{") (expression_statement "local_88 = local_b0;" (assignment_expression "local_88 = local_b0" (identifier "local_88") (= "=") (identifier "local_b0")) (; ";")) (expression_statement "local_a8 = local_b0;" (assignment_expression "local_a8 = local_b0" (identifier "local_a8") (= "=") (identifier "local_b0")) (; ";")) (expression_statement "local_bc = (undefined4 *)0x0;" (assignment_expression "local_bc = (undefined4 *)0x0" (identifier "local_bc") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (do_statement "do {\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        } while( true );" (do "do") (compound_statement "{\n          if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }\n          if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }\n          if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }\n          if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }\n          iVar10 = (int)pbVar1 - (int)local_a8;\n          iVar8 = iVar10 + 3;\n          if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }\n          DAT_00076924 = iVar8 >> 2;\n          if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }\n          DAT_00076924 = DAT_00076924 + DAT_00076920;\n          if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }\n          FUN_0001e980();\n          pbVar14 = (byte *)0x0;\n          pbVar5 = extraout_ECX;\nLAB_000323ac:\n          puVar4 = puVar3 + -1;\nLAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);\nLAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;\n          if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }\nLAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);\n          pbVar5 = local_b0 + (int)puVar3 * 8;\n          local_a8 = pbVar5 + (int)puVar3 * 4;\n          local_bc = puVar3;\n          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;\n          local_88 = local_b0;\n          local_b0 = pbVar5;\n        }" ({ "{") (if_statement "if (param_2 != 0) {\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }" (if "if") (parenthesized_expression "(param_2 != 0)" (( "(") (binary_expression "param_2 != 0" (identifier "param_2") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            FUN_0001ec20();\n            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);\n            printf(pcVar7,local_ac);\n            if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }\n            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);\n            printf(pcVar7,local_98);\n            puVar3 = (undefined4 *)0x0;\n            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);\n            printf(pcVar7,local_bc);\n          }" ({ "{") (expression_statement "FUN_0001ec20();" (call_expression "FUN_0001ec20()" (identifier "FUN_0001ec20") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5)" (identifier "pcVar7") (= "=") (cast_expression "(char *)dcgettext(0,"  Version:                 %d\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Version:                 %d\n",5)" (identifier "dcgettext") (argument_list "(0,"  Version:                 %d\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Version:                 %d\n"" (" """) (string_content "  Version:                 %d") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar7,local_ac);" (call_expression "printf(pcVar7,local_ac)" (identifier "printf") (argument_list "(pcVar7,local_ac)" (( "(") (identifier "pcVar7") (, ",") (identifier "local_ac") () ")"))) (; ";")) (if_statement "if (1 < local_ac) {\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }" (if "if") (parenthesized_expression "(1 < local_ac)" (( "(") (binary_expression "1 < local_ac" (number_literal "1") (< "<") (identifier "local_ac")) () ")")) (compound_statement "{\n              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);\n              printf(pcVar7,local_b8);\n            }" ({ "{") (expression_statement "pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5)" (identifier "pcVar7") (= "=") (cast_expression "(char *)dcgettext(0,"  Number of columns:       %d\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Number of columns:       %d\n",5)" (identifier "dcgettext") (argument_list "(0,"  Number of columns:       %d\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Number of columns:       %d\n"" (" """) (string_content "  Number of columns:       %d") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar7,local_b8);" (call_expression "printf(pcVar7,local_b8)" (identifier "printf") (argument_list "(pcVar7,local_b8)" (( "(") (identifier "pcVar7") (, ",") (identifier "local_b8") () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5)" (identifier "pcVar7") (= "=") (cast_expression "(char *)dcgettext(0,"  Number of used entries:  %d\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Number of used entries:  %d\n",5)" (identifier "dcgettext") (argument_list "(0,"  Number of used entries:  %d\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Number of used entries:  %d\n"" (" """) (string_content "  Number of used entries:  %d") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar7,local_98);" (call_expression "printf(pcVar7,local_98)" (identifier "printf") (argument_list "(pcVar7,local_98)" (( "(") (identifier "pcVar7") (, ",") (identifier "local_98") () ")"))) (; ";")) (expression_statement "puVar3 = (undefined4 *)0x0;" (assignment_expression "puVar3 = (undefined4 *)0x0" (identifier "puVar3") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5)" (identifier "pcVar7") (= "=") (cast_expression "(char *)dcgettext(0,"  Number of slots:         %d\n\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Number of slots:         %d\n\n",5)" (identifier "dcgettext") (argument_list "(0,"  Number of slots:         %d\n\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Number of slots:         %d\n\n"" (" """) (string_content "  Number of slots:         %d") (escape_sequence "\n") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar7,local_bc);" (call_expression "printf(pcVar7,local_bc)" (identifier "printf") (argument_list "(pcVar7,local_bc)" (( "(") (identifier "pcVar7") (, ",") (identifier "local_bc") () ")"))) (; ";")) (} "}"))) (if_statement "if (pbVar1 < local_a8) {\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }" (if "if") (parenthesized_expression "(pbVar1 < local_a8)" (( "(") (binary_expression "pbVar1 < local_a8" (identifier "pbVar1") (< "<") (identifier "local_a8")) () ")")) (compound_statement "{\n            pbVar14 = *(byte **)(param_1 + 8);\n            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);\n            goto LAB_000314f3;\n          }" ({ "{") (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" (identifier "pbVar14") (= "=") (pointer_expression "*(byte **)(param_1 + 8)" (* "*") (cast_expression "(byte **)(param_1 + 8)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5)" (identifier "uVar9") (= "=") (call_expression "dcgettext(0,"Section %s too small for %d hash table entries\n",5)" (identifier "dcgettext") (argument_list "(0,"Section %s too small for %d hash table entries\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Section %s too small for %d hash table entries\n"" (" """) (string_content "Section %s too small for %d hash table entries") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (goto_statement "goto LAB_000314f3;" (goto "goto") (statement_identifier "LAB_000314f3") (; ";")) (} "}"))) (if_statement "if (local_ac != 1) {\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }" (if "if") (parenthesized_expression "(local_ac != 1)" (( "(") (binary_expression "local_ac != 1" (identifier "local_ac") (!= "!=") (number_literal "1")) () ")")) (compound_statement "{\n            if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }\n            uVar2 = (int)local_b8 * 4;\n            pbVar5 = local_a8 + uVar2;\n            if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }\n            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);\n            warn(uVar9,local_b8);\n            return 0;\n          }" ({ "{") (if_statement "if (local_ac != 2) {\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }" (if "if") (parenthesized_expression "(local_ac != 2)" (( "(") (binary_expression "local_ac != 2" (identifier "local_ac") (!= "!=") (number_literal "2")) () ")")) (compound_statement "{\n              if (param_2 == 0) {\n                return 1;\n              }\n              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);\n              printf(pcVar7,local_ac);\n              goto LAB_000316b0;\n            }" ({ "{") (if_statement "if (param_2 == 0) {\n                return 1;\n              }" (if "if") (parenthesized_expression "(param_2 == 0)" (( "(") (binary_expression "param_2 == 0" (identifier "param_2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                return 1;\n              }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5)" (identifier "pcVar7") (= "=") (cast_expression "(char *)dcgettext(0,"  Unsupported version (%d)\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Unsupported version (%d)\n",5)" (identifier "dcgettext") (argument_list "(0,"  Unsupported version (%d)\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Unsupported version (%d)\n"" (" """) (string_content "  Unsupported version (%d)") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar7,local_ac);" (call_expression "printf(pcVar7,local_ac)" (identifier "printf") (argument_list "(pcVar7,local_ac)" (( "(") (identifier "pcVar7") (, ",") (identifier "local_ac") () ")"))) (; ";")) (goto_statement "goto LAB_000316b0;" (goto "goto") (statement_identifier "LAB_000316b0") (; ";")) (} "}"))) (expression_statement "uVar2 = (int)local_b8 * 4;" (assignment_expression "uVar2 = (int)local_b8 * 4" (identifier "uVar2") (= "=") (binary_expression "(int)local_b8 * 4" (cast_expression "(int)local_b8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b8")) (* "*") (number_literal "4"))) (; ";")) (expression_statement "pbVar5 = local_a8 + uVar2;" (assignment_expression "pbVar5 = local_a8 + uVar2" (identifier "pbVar5") (= "=") (binary_expression "local_a8 + uVar2" (identifier "local_a8") (+ "+") (identifier "uVar2"))) (; ";")) (if_statement "if (!CARRY4((uint)local_a8,uVar2)) {\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }" (if "if") (parenthesized_expression "(!CARRY4((uint)local_a8,uVar2))" (( "(") (unary_expression "!CARRY4((uint)local_a8,uVar2)" (! "!") (call_expression "CARRY4((uint)local_a8,uVar2)" (identifier "CARRY4") (argument_list "((uint)local_a8,uVar2)" (( "(") (cast_expression "(uint)local_a8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_a8")) (, ",") (identifier "uVar2") () ")")))) () ")")) (compound_statement "{\n              uVar6 = uVar2 + 3;\n              if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }\n              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }\n            }" ({ "{") (expression_statement "uVar6 = uVar2 + 3;" (assignment_expression "uVar6 = uVar2 + 3" (identifier "uVar6") (= "=") (binary_expression "uVar2 + 3" (identifier "uVar2") (+ "+") (number_literal "3"))) (; ";")) (if_statement "if (-1 < (int)uVar2) {\n                uVar6 = uVar2;\n              }" (if "if") (parenthesized_expression "(-1 < (int)uVar2)" (( "(") (binary_expression "-1 < (int)uVar2" (number_literal "-1") (< "<") (cast_expression "(int)uVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar2"))) () ")")) (compound_statement "{\n                uVar6 = uVar2;\n              }" ({ "{") (expression_statement "uVar6 = uVar2;" (assignment_expression "uVar6 = uVar2" (identifier "uVar6") (= "=") (identifier "uVar2")) (; ";")) (} "}"))) (if_statement "if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }" (if "if") (parenthesized_expression "((undefined4 *)((int)uVar6 >> 2) == local_b8)" (( "(") (binary_expression "(undefined4 *)((int)uVar6 >> 2) == local_b8" (cast_expression "(undefined4 *)((int)uVar6 >> 2)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)uVar6 >> 2)" (( "(") (binary_expression "(int)uVar6 >> 2" (cast_expression "(int)uVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar6")) (>> ">>") (number_literal "2")) () ")"))) (== "==") (identifier "local_b8")) () ")")) (compound_statement "{\n                pbVar14 = *(byte **)(param_1 + 8);\n                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;\n                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;\n                if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }\n                pcVar7 = "Section %s too small for offset and size tables\n";\n                goto LAB_0003156a;\n              }" ({ "{") (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" (identifier "pbVar14") (= "=") (pointer_expression "*(byte **)(param_1 + 8)" (* "*") (cast_expression "(byte **)(param_1 + 8)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;" (assignment_expression "bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2" (identifier "bVar16") (= "=") (binary_expression "pbVar1 < pbVar5 + uVar2 * local_98 * 2" (identifier "pbVar1") (< "<") (binary_expression "pbVar5 + uVar2 * local_98 * 2" (identifier "pbVar5") (+ "+") (binary_expression "uVar2 * local_98 * 2" (binary_expression "uVar2 * local_98" (identifier "uVar2") (* "*") (identifier "local_98")) (* "*") (number_literal "2"))))) (; ";")) (expression_statement "bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;" (assignment_expression "bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2" (identifier "bVar17") (= "=") (binary_expression "pbVar1 == pbVar5 + uVar2 * local_98 * 2" (identifier "pbVar1") (== "==") (binary_expression "pbVar5 + uVar2 * local_98 * 2" (identifier "pbVar5") (+ "+") (binary_expression "uVar2 * local_98 * 2" (binary_expression "uVar2 * local_98" (identifier "uVar2") (* "*") (identifier "local_98")) (* "*") (number_literal "2"))))) (; ";")) (if_statement "if (!bVar16) {\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }" (if "if") (parenthesized_expression "(!bVar16)" (( "(") (unary_expression "!bVar16" (! "!") (identifier "bVar16")) () ")")) (compound_statement "{\n                  iVar8 = 0x10;\n                  pbVar15 = (byte *)".debug_tu_index";\n                  goto code_r0x00031991;\n                }" ({ "{") (expression_statement "iVar8 = 0x10;" (assignment_expression "iVar8 = 0x10" (identifier "iVar8") (= "=") (number_literal "0x10")) (; ";")) (expression_statement "pbVar15 = (byte *)".debug_tu_index";" (assignment_expression "pbVar15 = (byte *)".debug_tu_index"" (identifier "pbVar15") (= "=") (cast_expression "(byte *)".debug_tu_index"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".debug_tu_index"" (" """) (string_content ".debug_tu_index") (" """)))) (; ";")) (goto_statement "goto code_r0x00031991;" (goto "goto") (statement_identifier "code_r0x00031991") (; ";")) (} "}"))) (expression_statement "pcVar7 = "Section %s too small for offset and size tables\n";" (assignment_expression "pcVar7 = "Section %s too small for offset and size tables\n"" (identifier "pcVar7") (= "=") (string_literal ""Section %s too small for offset and size tables\n"" (" """) (string_content "Section %s too small for offset and size tables") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto LAB_0003156a;" (goto "goto") (statement_identifier "LAB_0003156a") (; ";")) (} "}"))) (} "}"))) (expression_statement "uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5)" (identifier "uVar9") (= "=") (call_expression "dcgettext(0,"Overlarge number of columns: %x\n",5)" (identifier "dcgettext") (argument_list "(0,"Overlarge number of columns: %x\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Overlarge number of columns: %x\n"" (" """) (string_content "Overlarge number of columns: %x") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar9,local_b8);" (call_expression "warn(uVar9,local_b8)" (identifier "warn") (argument_list "(uVar9,local_b8)" (( "(") (identifier "uVar9") (, ",") (identifier "local_b8") () ")"))) (; ";")) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (if_statement "if (param_2 != 0) {\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }" (if "if") (parenthesized_expression "(param_2 != 0)" (( "(") (binary_expression "param_2 != 0" (identifier "param_2") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\nLAB_00031644:\n            local_b8 = (undefined4 *)0x0;\n            goto LAB_0003165a;\n          }" ({ "{") (if_statement "if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;" (if "if") (parenthesized_expression "(local_bc == (undefined4 *)0x0)" (( "(") (binary_expression "local_bc == (undefined4 *)0x0" (identifier "local_bc") (== "==") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000316b0;" (goto "goto") (statement_identifier "LAB_000316b0") (; ";"))) (labeled_statement "LAB_00031644:\n            local_b8 = (undefined4 *)0x0;" (statement_identifier "LAB_00031644") (: ":") (expression_statement "local_b8 = (undefined4 *)0x0;" (assignment_expression "local_b8 = (undefined4 *)0x0" (identifier "local_b8") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";"))) (goto_statement "goto LAB_0003165a;" (goto "goto") (statement_identifier "LAB_0003165a") (; ";")) (} "}"))) (expression_statement "iVar10 = (int)pbVar1 - (int)local_a8;" (assignment_expression "iVar10 = (int)pbVar1 - (int)local_a8" (identifier "iVar10") (= "=") (binary_expression "(int)pbVar1 - (int)local_a8" (cast_expression "(int)pbVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar1")) (- "-") (cast_expression "(int)local_a8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_a8")))) (; ";")) (expression_statement "iVar8 = iVar10 + 3;" (assignment_expression "iVar8 = iVar10 + 3" (identifier "iVar8") (= "=") (binary_expression "iVar10 + 3" (identifier "iVar10") (+ "+") (number_literal "3"))) (; ";")) (if_statement "if (-1 < iVar10) {\n            iVar8 = iVar10;\n          }" (if "if") (parenthesized_expression "(-1 < iVar10)" (( "(") (binary_expression "-1 < iVar10" (number_literal "-1") (< "<") (identifier "iVar10")) () ")")) (compound_statement "{\n            iVar8 = iVar10;\n          }" ({ "{") (expression_statement "iVar8 = iVar10;" (assignment_expression "iVar8 = iVar10" (identifier "iVar8") (= "=") (identifier "iVar10")) (; ";")) (} "}"))) (expression_statement "DAT_00076924 = iVar8 >> 2;" (assignment_expression "DAT_00076924 = iVar8 >> 2" (identifier "DAT_00076924") (= "=") (binary_expression "iVar8 >> 2" (identifier "iVar8") (>> ">>") (number_literal "2"))) (; ";")) (if_statement "if (DAT_00076928 == 0) {\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }" (if "if") (parenthesized_expression "(DAT_00076928 == 0)" (( "(") (binary_expression "DAT_00076928 == 0" (identifier "DAT_00076928") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            DAT_00076920 = 0;\n            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);\nLAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }\n            goto LAB_00031644;\n          }" ({ "{") (expression_statement "DAT_00076920 = 0;" (assignment_expression "DAT_00076920 = 0" (identifier "DAT_00076920") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00076928 = FUN_0002dba0(DAT_00076924,4);" (assignment_expression "DAT_00076928 = FUN_0002dba0(DAT_00076924,4)" (identifier "DAT_00076928") (= "=") (call_expression "FUN_0002dba0(DAT_00076924,4)" (identifier "FUN_0002dba0") (argument_list "(DAT_00076924,4)" (( "(") (identifier "DAT_00076924") (, ",") (number_literal "4") () ")")))) (; ";")) (labeled_statement "LAB_00031d8a:\n            if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }" (statement_identifier "LAB_00031d8a") (: ":") (if_statement "if (local_bc == (undefined4 *)0x0) {\n              return 1;\n            }" (if "if") (parenthesized_expression "(local_bc == (undefined4 *)0x0)" (( "(") (binary_expression "local_bc == (undefined4 *)0x0" (identifier "local_bc") (== "==") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              return 1;\n            }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}")))) (goto_statement "goto LAB_00031644;" (goto "goto") (statement_identifier "LAB_00031644") (; ";")) (} "}"))) (expression_statement "DAT_00076924 = DAT_00076924 + DAT_00076920;" (assignment_expression "DAT_00076924 = DAT_00076924 + DAT_00076920" (identifier "DAT_00076924") (= "=") (binary_expression "DAT_00076924 + DAT_00076920" (identifier "DAT_00076924") (+ "+") (identifier "DAT_00076920"))) (; ";")) (if_statement "if (DAT_00076924 < 0x3fffffff) {\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }" (if "if") (parenthesized_expression "(DAT_00076924 < 0x3fffffff)" (( "(") (binary_expression "DAT_00076924 < 0x3fffffff" (identifier "DAT_00076924") (< "<") (number_literal "0x3fffffff")) () ")")) (compound_statement "{\n            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);\n            goto LAB_00031d8a;\n          }" ({ "{") (expression_statement "DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);" (assignment_expression "DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4)" (identifier "DAT_00076928") (= "=") (call_expression "xrealloc(DAT_00076928,DAT_00076924 * 4)" (identifier "xrealloc") (argument_list "(DAT_00076928,DAT_00076924 * 4)" (( "(") (identifier "DAT_00076928") (, ",") (binary_expression "DAT_00076924 * 4" (identifier "DAT_00076924") (* "*") (number_literal "4")) () ")")))) (; ";")) (goto_statement "goto LAB_00031d8a;" (goto "goto") (statement_identifier "LAB_00031d8a") (; ";")) (} "}"))) (expression_statement "FUN_0001e980();" (call_expression "FUN_0001e980()" (identifier "FUN_0001e980") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pbVar14 = (byte *)0x0;" (assignment_expression "pbVar14 = (byte *)0x0" (identifier "pbVar14") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pbVar5 = extraout_ECX;" (assignment_expression "pbVar5 = extraout_ECX" (identifier "pbVar5") (= "=") (identifier "extraout_ECX")) (; ";")) (labeled_statement "LAB_000323ac:\n          puVar4 = puVar3 + -1;" (statement_identifier "LAB_000323ac") (: ":") (expression_statement "puVar4 = puVar3 + -1;" (assignment_expression "puVar4 = puVar3 + -1" (identifier "puVar4") (= "=") (binary_expression "puVar3 + -1" (identifier "puVar3") (+ "+") (number_literal "-1"))) (; ";"))) (labeled_statement "LAB_0003153d:\n          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);" (statement_identifier "LAB_0003153d") (: ":") (expression_statement "local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);" (assignment_expression "local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4)" (identifier "local_b8") (= "=") (cast_expression "(undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)*local_bc)(pbVar5,puVar4)" (parenthesized_expression "(*(code *)*local_bc)" (( "(") (pointer_expression "*(code *)*local_bc" (* "*") (cast_expression "(code *)*local_bc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*local_bc" (* "*") (identifier "local_bc")))) () ")")) (argument_list "(pbVar5,puVar4)" (( "(") (identifier "pbVar5") (, ",") (identifier "puVar4") () ")"))))) (; ";"))) (labeled_statement "LAB_000313d0:\n          pbVar5 = pbVar14 + 0xc;" (statement_identifier "LAB_000313d0") (: ":") (expression_statement "pbVar5 = pbVar14 + 0xc;" (assignment_expression "pbVar5 = pbVar14 + 0xc" (identifier "pbVar5") (= "=") (binary_expression "pbVar14 + 0xc" (identifier "pbVar14") (+ "+") (number_literal "0xc"))) (; ";"))) (if_statement "if (pbVar5 < pbVar1) {\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }\n          else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }" (if "if") (parenthesized_expression "(pbVar5 < pbVar1)" (( "(") (binary_expression "pbVar5 < pbVar1" (identifier "pbVar5") (< "<") (identifier "pbVar1")) () ")")) (compound_statement "{\nLAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);\n            local_b0 = pbVar14 + 0x10;\n            if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }\n          }" ({ "{") (labeled_statement "LAB_000313e1:\n            local_98 = (*DAT_00076b4c)(local_b0,4);" (statement_identifier "LAB_000313e1") (: ":") (expression_statement "local_98 = (*DAT_00076b4c)(local_b0,4);" (assignment_expression "local_98 = (*DAT_00076b4c)(local_b0,4)" (identifier "local_98") (= "=") (call_expression "(*DAT_00076b4c)(local_b0,4)" (parenthesized_expression "(*DAT_00076b4c)" (( "(") (pointer_expression "*DAT_00076b4c" (* "*") (identifier "DAT_00076b4c")) () ")")) (argument_list "(local_b0,4)" (( "(") (identifier "local_b0") (, ",") (number_literal "4") () ")")))) (; ";"))) (expression_statement "local_b0 = pbVar14 + 0x10;" (assignment_expression "local_b0 = pbVar14 + 0x10" (identifier "local_b0") (= "=") (binary_expression "pbVar14 + 0x10" (identifier "pbVar14") (+ "+") (number_literal "0x10"))) (; ";")) (if_statement "if (local_b0 < pbVar1) {\n              puVar3 = (undefined4 *)0x4;\n            }\n            else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }" (if "if") (parenthesized_expression "(local_b0 < pbVar1)" (( "(") (binary_expression "local_b0 < pbVar1" (identifier "local_b0") (< "<") (identifier "pbVar1")) () ")")) (compound_statement "{\n              puVar3 = (undefined4 *)0x4;\n            }" ({ "{") (expression_statement "puVar3 = (undefined4 *)0x4;" (assignment_expression "puVar3 = (undefined4 *)0x4" (identifier "puVar3") (= "=") (cast_expression "(undefined4 *)0x4" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x4"))) (; ";")) (} "}")) (else_clause "else {\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }" (else "else") (compound_statement "{\n              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;\n              puVar3 = puVar3 + -3;\n            }" ({ "{") (if_statement "if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;" (if "if") (parenthesized_expression "(7 < (int)puVar3 - 0xdU)" (( "(") (binary_expression "7 < (int)puVar3 - 0xdU" (number_literal "7") (< "<") (binary_expression "(int)puVar3 - 0xdU" (cast_expression "(int)puVar3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar3")) (- "-") (number_literal "0xdU"))) () ")")) (goto_statement "goto LAB_0003134f;" (goto "goto") (statement_identifier "LAB_0003134f") (; ";"))) (expression_statement "puVar3 = puVar3 + -3;" (assignment_expression "puVar3 = puVar3 + -3" (identifier "puVar3") (= "=") (binary_expression "puVar3 + -3" (identifier "puVar3") (+ "+") (number_literal "-3"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }" (else "else") (compound_statement "{\n            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;\n            puVar3 = puVar3 + -2;\n            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);\n            local_b0 = pbVar14 + 0x10;\n            if (pbVar1 <= local_b0) goto LAB_0003134f;\n            puVar3 = (undefined4 *)0x4;\n          }" ({ "{") (if_statement "if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;" (if "if") (parenthesized_expression "((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2))" (( "(") (binary_expression "(pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)" (parenthesized_expression "(pbVar1 <= local_b0)" (( "(") (binary_expression "pbVar1 <= local_b0" (identifier "pbVar1") (<= "<=") (identifier "local_b0")) () ")")) (|| "||") (parenthesized_expression "(uVar2 = (int)puVar3 - 9, 7 < uVar2)" (( "(") (comma_expression "uVar2 = (int)puVar3 - 9, 7 < uVar2" (assignment_expression "uVar2 = (int)puVar3 - 9" (identifier "uVar2") (= "=") (binary_expression "(int)puVar3 - 9" (cast_expression "(int)puVar3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar3")) (- "-") (number_literal "9"))) (, ",") (binary_expression "7 < uVar2" (number_literal "7") (< "<") (identifier "uVar2"))) () ")"))) () ")")) (goto_statement "goto LAB_00031338;" (goto "goto") (statement_identifier "LAB_00031338") (; ";"))) (expression_statement "puVar3 = puVar3 + -2;" (assignment_expression "puVar3 = puVar3 + -2" (identifier "puVar3") (= "=") (binary_expression "puVar3 + -2" (identifier "puVar3") (+ "+") (number_literal "-2"))) (; ";")) (expression_statement "local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);" (assignment_expression "local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2)" (identifier "local_98") (= "=") (call_expression "(*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2)" (parenthesized_expression "(*DAT_00076b4c)" (( "(") (pointer_expression "*DAT_00076b4c" (* "*") (identifier "DAT_00076b4c")) () ")")) (argument_list "(local_b0,puVar3,uVar2,uVar2)" (( "(") (identifier "local_b0") (, ",") (identifier "puVar3") (, ",") (identifier "uVar2") (, ",") (identifier "uVar2") () ")")))) (; ";")) (expression_statement "local_b0 = pbVar14 + 0x10;" (assignment_expression "local_b0 = pbVar14 + 0x10" (identifier "local_b0") (= "=") (binary_expression "pbVar14 + 0x10" (identifier "pbVar14") (+ "+") (number_literal "0x10"))) (; ";")) (if_statement "if (pbVar1 <= local_b0) goto LAB_0003134f;" (if "if") (parenthesized_expression "(pbVar1 <= local_b0)" (( "(") (binary_expression "pbVar1 <= local_b0" (identifier "pbVar1") (<= "<=") (identifier "local_b0")) () ")")) (goto_statement "goto LAB_0003134f;" (goto "goto") (statement_identifier "LAB_0003134f") (; ";"))) (expression_statement "puVar3 = (undefined4 *)0x4;" (assignment_expression "puVar3 = (undefined4 *)0x4" (identifier "puVar3") (= "=") (cast_expression "(undefined4 *)0x4" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x4"))) (; ";")) (} "}")))) (labeled_statement "LAB_0003148f:\n          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);" (statement_identifier "LAB_0003148f") (: ":") (expression_statement "puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);" (assignment_expression "puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3)" (identifier "puVar3") (= "=") (cast_expression "(undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*DAT_00076b4c)(pbVar5,puVar3)" (parenthesized_expression "(*DAT_00076b4c)" (( "(") (pointer_expression "*DAT_00076b4c" (* "*") (identifier "DAT_00076b4c")) () ")")) (argument_list "(pbVar5,puVar3)" (( "(") (identifier "pbVar5") (, ",") (identifier "puVar3") () ")"))))) (; ";"))) (expression_statement "pbVar5 = local_b0 + (int)puVar3 * 8;" (assignment_expression "pbVar5 = local_b0 + (int)puVar3 * 8" (identifier "pbVar5") (= "=") (binary_expression "local_b0 + (int)puVar3 * 8" (identifier "local_b0") (+ "+") (binary_expression "(int)puVar3 * 8" (cast_expression "(int)puVar3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar3")) (* "*") (number_literal "8")))) (; ";")) (expression_statement "local_a8 = pbVar5 + (int)puVar3 * 4;" (assignment_expression "local_a8 = pbVar5 + (int)puVar3 * 4" (identifier "local_a8") (= "=") (binary_expression "pbVar5 + (int)puVar3 * 4" (identifier "pbVar5") (+ "+") (binary_expression "(int)puVar3 * 4" (cast_expression "(int)puVar3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar3")) (* "*") (number_literal "4")))) (; ";")) (expression_statement "local_bc = puVar3;" (assignment_expression "local_bc = puVar3" (identifier "local_bc") (= "=") (identifier "puVar3")) (; ";")) (if_statement "if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;" (if "if") (parenthesized_expression "(((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0))))" (( "(") (binary_expression "((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||\n             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))" (parenthesized_expression "((pbVar5 < local_b0) || (local_a8 < pbVar14))" (( "(") (binary_expression "(pbVar5 < local_b0) || (local_a8 < pbVar14)" (parenthesized_expression "(pbVar5 < local_b0)" (( "(") (binary_expression "pbVar5 < local_b0" (identifier "pbVar5") (< "<") (identifier "local_b0")) () ")")) (|| "||") (parenthesized_expression "(local_a8 < pbVar14)" (( "(") (binary_expression "local_a8 < pbVar14" (identifier "local_a8") (< "<") (identifier "pbVar14")) () ")"))) () ")")) (|| "||") (parenthesized_expression "((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))" (( "(") (parenthesized_expression "(pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0))" (( "(") (binary_expression "pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)" (binary_expression "pbVar5 == local_b0" (identifier "pbVar5") (== "==") (identifier "local_b0")) (&& "&&") (parenthesized_expression "(puVar3 != (undefined4 *)0x0)" (( "(") (binary_expression "puVar3 != (undefined4 *)0x0" (identifier "puVar3") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")"))) () ")")) () ")"))) () ")")) (goto_statement "goto LAB_000314c9;" (goto "goto") (statement_identifier "LAB_000314c9") (; ";"))) (expression_statement "local_88 = local_b0;" (assignment_expression "local_88 = local_b0" (identifier "local_88") (= "=") (identifier "local_b0")) (; ";")) (expression_statement "local_b0 = pbVar5;" (assignment_expression "local_b0 = pbVar5" (identifier "local_b0") (= "=") (identifier "pbVar5")) (; ";")) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}")))) (expression_statement "local_bc = (undefined4 *)0x0;" (assignment_expression "local_bc = (undefined4 *)0x0" (identifier "local_bc") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (labeled_statement "LAB_000314c9:\n      pbVar14 = *(byte **)(param_1 + 8);" (statement_identifier "LAB_000314c9") (: ":") (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" (identifier "pbVar14") (= "=") (pointer_expression "*(byte **)(param_1 + 8)" (* "*") (cast_expression "(byte **)(param_1 + 8)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")"))))) (; ";"))) (expression_statement "uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5);" (assignment_expression "uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5)" (identifier "uVar9") (= "=") (call_expression "dcngettext(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5)" (identifier "dcngettext") (argument_list "(0,"Section %s is too small for %d slot\n",\n                         "Section %s is too small for %d slots\n",local_bc,5)" (( "(") (number_literal "0") (, ",") (string_literal ""Section %s is too small for %d slot\n"" (" """) (string_content "Section %s is too small for %d slot") (escape_sequence "\n") (" """)) (, ",") (string_literal ""Section %s is too small for %d slots\n"" (" """) (string_content "Section %s is too small for %d slots") (escape_sequence "\n") (" """)) (, ",") (identifier "local_bc") (, ",") (number_literal "5") () ")")))) (; ";")) (goto_statement "goto LAB_000314f3;" (goto "goto") (statement_identifier "LAB_000314f3") (; ";")) (} "}"))) (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" (identifier "pbVar14") (= "=") (pointer_expression "*(byte **)(param_1 + 8)" (* "*") (cast_expression "(byte **)(param_1 + 8)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "pcVar7 = "Section %s is too small to contain a CU/TU header\n";" (assignment_expression "pcVar7 = "Section %s is too small to contain a CU/TU header\n"" (identifier "pcVar7") (= "=") (string_literal ""Section %s is too small to contain a CU/TU header\n"" (" """) (string_content "Section %s is too small to contain a CU/TU header") (escape_sequence "\n") (" """))) (; ";")) (} "}")))) (labeled_statement "LAB_0003156a:\n  local_bc = (undefined4 *)0x5;" (statement_identifier "LAB_0003156a") (: ":") (expression_statement "local_bc = (undefined4 *)0x5;" (assignment_expression "local_bc = (undefined4 *)0x5" (identifier "local_bc") (= "=") (cast_expression "(undefined4 *)0x5" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";"))) (expression_statement "uVar9 = dcgettext(0,pcVar7,5);" (assignment_expression "uVar9 = dcgettext(0,pcVar7,5)" (identifier "uVar9") (= "=") (call_expression "dcgettext(0,pcVar7,5)" (identifier "dcgettext") (argument_list "(0,pcVar7,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar7") (, ",") (number_literal "5") () ")")))) (; ";")) (labeled_statement "LAB_000314f3:\n  warn(uVar9,pbVar14,local_bc);" (statement_identifier "LAB_000314f3") (: ":") (expression_statement "warn(uVar9,pbVar14,local_bc);" (call_expression "warn(uVar9,pbVar14,local_bc)" (identifier "warn") (argument_list "(uVar9,pbVar14,local_bc)" (( "(") (identifier "uVar9") (, ",") (identifier "pbVar14") (, ",") (identifier "local_bc") () ")"))) (; ";"))) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (labeled_statement "LAB_0003165a:\n  if (pbVar1 < local_88 + 8) {\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }" (statement_identifier "LAB_0003165a") (: ":") (if_statement "if (pbVar1 < local_88 + 8) {\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }" (if "if") (parenthesized_expression "(pbVar1 < local_88 + 8)" (( "(") (binary_expression "pbVar1 < local_88 + 8" (identifier "pbVar1") (< "<") (binary_expression "local_88 + 8" (identifier "local_88") (+ "+") (number_literal "8"))) () ")")) (compound_statement "{\n    local_6c = 0;\n    local_68 = 0;\n    local_64 = 0;\n    local_60 = 0;\n    goto LAB_0003168c;\n  }" ({ "{") (expression_statement "local_6c = 0;" (assignment_expression "local_6c = 0" (identifier "local_6c") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" (identifier "local_68") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_64 = 0;" (assignment_expression "local_64 = 0" (identifier "local_64") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" (identifier "local_60") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_0003168c;" (goto "goto") (statement_identifier "LAB_0003168c") (; ";")) (} "}")))) (expression_statement "piVar19 = &local_64;" (assignment_expression "piVar19 = &local_64" (identifier "piVar19") (= "=") (pointer_expression "&local_64" (& "&") (identifier "local_64"))) (; ";")) (expression_statement "FUN_000490b0(local_88,&local_6c,piVar19);" (call_expression "FUN_000490b0(local_88,&local_6c,piVar19)" (identifier "FUN_000490b0") (argument_list "(local_88,&local_6c,piVar19)" (( "(") (identifier "local_88") (, ",") (pointer_expression "&local_6c" (& "&") (identifier "local_6c")) (, ",") (identifier "piVar19") () ")"))) (; ";")) (if_statement "if ((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)) {\n    iVar8 = 4;\n    if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }\n    if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }\n    if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }" (if "if") (parenthesized_expression "((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0))" (( "(") (binary_expression "(local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)" (parenthesized_expression "(local_68 != 0 || local_6c != 0)" (( "(") (binary_expression "local_68 != 0 || local_6c != 0" (binary_expression "local_68 != 0" (identifier "local_68") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "local_6c != 0" (identifier "local_6c") (!= "!=") (number_literal "0"))) () ")")) (|| "||") (parenthesized_expression "(local_60 != 0 || local_64 != 0)" (( "(") (binary_expression "local_60 != 0 || local_64 != 0" (binary_expression "local_60 != 0" (identifier "local_60") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "local_64 != 0" (identifier "local_64") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n    iVar8 = 4;\n    if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }\n    if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }\n    if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }\n    pbVar14 = *(byte **)(param_1 + 8);\n    pcVar7 = "Section %s too small for shndx pool\n";\n    goto LAB_0003156a;\n  }" ({ "{") (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" (identifier "iVar8") (= "=") (number_literal "4")) (; ";")) (if_statement "if ((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }" (if "if") (parenthesized_expression "((local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8))))" (( "(") (binary_expression "(local_b0 + 4 < pbVar1) ||\n       ((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))" (parenthesized_expression "(local_b0 + 4 < pbVar1)" (( "(") (binary_expression "local_b0 + 4 < pbVar1" (binary_expression "local_b0 + 4" (identifier "local_b0") (+ "+") (number_literal "4")) (< "<") (identifier "pbVar1")) () ")")) (|| "||") (parenthesized_expression "((pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))" (( "(") (parenthesized_expression "(pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8))" (( "(") (comma_expression "pbVar14 = local_a8, local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)" (assignment_expression "pbVar14 = local_a8" (identifier "pbVar14") (= "=") (identifier "local_a8")) (, ",") (binary_expression "local_b0 < pbVar1 &&\n        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)" (binary_expression "local_b0 < pbVar1" (identifier "local_b0") (< "<") (identifier "pbVar1")) (&& "&&") (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)" (( "(") (comma_expression "iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)local_b0" (identifier "iVar8") (= "=") (binary_expression "(int)pbVar1 - (int)local_b0" (cast_expression "(int)pbVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar1")) (- "-") (cast_expression "(int)local_b0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b0")))) (, ",") (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" (identifier "iVar8") (- "-") (number_literal "1U")) (< "<") (number_literal "8"))) () ")")))) () ")")) () ")"))) () ")")) (compound_statement "{\n      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);\n      pbVar14 = local_a8 + iVar8 * 4;\n      if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }\n    }" ({ "{") (expression_statement "iVar8 = (*DAT_00076b4c)(local_b0,iVar8);" (assignment_expression "iVar8 = (*DAT_00076b4c)(local_b0,iVar8)" (identifier "iVar8") (= "=") (call_expression "(*DAT_00076b4c)(local_b0,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" (( "(") (pointer_expression "*DAT_00076b4c" (* "*") (identifier "DAT_00076b4c")) () ")")) (argument_list "(local_b0,iVar8)" (( "(") (identifier "local_b0") (, ",") (identifier "iVar8") () ")")))) (; ";")) (expression_statement "pbVar14 = local_a8 + iVar8 * 4;" (assignment_expression "pbVar14 = local_a8 + iVar8 * 4" (identifier "pbVar14") (= "=") (binary_expression "local_a8 + iVar8 * 4" (identifier "local_a8") (+ "+") (binary_expression "iVar8 * 4" (identifier "iVar8") (* "*") (number_literal "4")))) (; ";")) (if_statement "if (local_a8 + iVar8 * 4 < local_a8) {\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }" (if "if") (parenthesized_expression "(local_a8 + iVar8 * 4 < local_a8)" (( "(") (binary_expression "local_a8 + iVar8 * 4 < local_a8" (binary_expression "local_a8 + iVar8 * 4" (identifier "local_a8") (+ "+") (binary_expression "iVar8 * 4" (identifier "iVar8") (* "*") (number_literal "4"))) (< "<") (identifier "local_a8")) () ")")) (compound_statement "{\n        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);\n        warn(uVar9);\n        return 0;\n      }" ({ "{") (expression_statement "uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Section index pool located before start of section\n",5)" (identifier "uVar9") (= "=") (call_expression "dcgettext(0,"Section index pool located before start of section\n",5)" (identifier "dcgettext") (argument_list "(0,"Section index pool located before start of section\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Section index pool located before start of section\n"" (" """) (string_content "Section index pool located before start of section") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar9);" (call_expression "warn(uVar9)" (identifier "warn") (argument_list "(uVar9)" (( "(") (identifier "uVar9") () ")"))) (; ";")) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (} "}"))) (if_statement "if (param_2 != 0) {\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }" (if "if") (parenthesized_expression "(param_2 != 0)" (( "(") (binary_expression "param_2 != 0" (identifier "param_2") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);\n      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);\n      printf(pcVar7,local_b8,piVar19);\n    }" ({ "{") (expression_statement "piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);" (assignment_expression "piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c)" (identifier "piVar19") (= "=") (cast_expression "(int *)FUN_0001eb80(local_64,local_60,local_5c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001eb80(local_64,local_60,local_5c)" (identifier "FUN_0001eb80") (argument_list "(local_64,local_60,local_5c)" (( "(") (identifier "local_64") (, ",") (identifier "local_60") (, ",") (identifier "local_5c") () ")"))))) (; ";")) (expression_statement "pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5)" (identifier "pcVar7") (= "=") (cast_expression "(char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5)" (identifier "dcgettext") (argument_list "(0,"  [%3d] Signature:  0x%s  Sections: ",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  [%3d] Signature:  0x%s  Sections: "" (" """) (string_content "  [%3d] Signature:  0x%s  Sections: ") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar7,local_b8,piVar19);" (call_expression "printf(pcVar7,local_b8,piVar19)" (identifier "printf") (argument_list "(pcVar7,local_b8,piVar19)" (( "(") (identifier "pcVar7") (, ",") (identifier "local_b8") (, ",") (identifier "piVar19") () ")"))) (; ";")) (} "}"))) (if_statement "if (pbVar14 < pbVar1) {\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }" (if "if") (parenthesized_expression "(pbVar14 < pbVar1)" (( "(") (binary_expression "pbVar14 < pbVar1" (identifier "pbVar14") (< "<") (identifier "pbVar1")) () ")")) (compound_statement "{\n      do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );\n    }" ({ "{") (do_statement "do {\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      } while( true );" (do "do") (compound_statement "{\n        pbVar5 = pbVar14 + 4;\n        if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }\n        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n        if (iVar8 == 0) goto LAB_000317d8;\n        if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }\n        pbVar14 = pbVar5;\n        if (pbVar1 <= pbVar5) break;\n      }" ({ "{") (expression_statement "pbVar5 = pbVar14 + 4;" (assignment_expression "pbVar5 = pbVar14 + 4" (identifier "pbVar5") (= "=") (binary_expression "pbVar14 + 4" (identifier "pbVar14") (+ "+") (number_literal "4"))) (; ";")) (if_statement "if (pbVar5 < pbVar1) {\n          iVar8 = 4;\n        }\n        else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }" (if "if") (parenthesized_expression "(pbVar5 < pbVar1)" (( "(") (binary_expression "pbVar5 < pbVar1" (identifier "pbVar5") (< "<") (identifier "pbVar1")) () ")")) (compound_statement "{\n          iVar8 = 4;\n        }" ({ "{") (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" (identifier "iVar8") (= "=") (number_literal "4")) (; ";")) (} "}")) (else_clause "else {\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }" (else "else") (compound_statement "{\n          iVar8 = (int)pbVar1 - (int)pbVar14;\n          if (7 < iVar8 - 1U) goto LAB_000317d8;\n        }" ({ "{") (expression_statement "iVar8 = (int)pbVar1 - (int)pbVar14;" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar14" (identifier "iVar8") (= "=") (binary_expression "(int)pbVar1 - (int)pbVar14" (cast_expression "(int)pbVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar1")) (- "-") (cast_expression "(int)pbVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar14")))) (; ";")) (if_statement "if (7 < iVar8 - 1U) goto LAB_000317d8;" (if "if") (parenthesized_expression "(7 < iVar8 - 1U)" (( "(") (binary_expression "7 < iVar8 - 1U" (number_literal "7") (< "<") (binary_expression "iVar8 - 1U" (identifier "iVar8") (- "-") (number_literal "1U"))) () ")")) (goto_statement "goto LAB_000317d8;" (goto "goto") (statement_identifier "LAB_000317d8") (; ";"))) (} "}")))) (expression_statement "iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);" (assignment_expression "iVar8 = (*DAT_00076b4c)(pbVar14,iVar8)" (identifier "iVar8") (= "=") (call_expression "(*DAT_00076b4c)(pbVar14,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" (( "(") (pointer_expression "*DAT_00076b4c" (* "*") (identifier "DAT_00076b4c")) () ")")) (argument_list "(pbVar14,iVar8)" (( "(") (identifier "pbVar14") (, ",") (identifier "iVar8") () ")")))) (; ";")) (if_statement "if (iVar8 == 0) goto LAB_000317d8;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000317d8;" (goto "goto") (statement_identifier "LAB_000317d8") (; ";"))) (if_statement "if (param_2 == 0) {\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }\n        else {\n          printf(" %d",iVar8,piVar19);\n        }" (if "if") (parenthesized_expression "(param_2 == 0)" (( "(") (binary_expression "param_2 == 0" (identifier "param_2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }\n        }" ({ "{") (if_statement "if (DAT_00076920 < DAT_00076924) {\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }\n          else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }" (if "if") (parenthesized_expression "(DAT_00076920 < DAT_00076924)" (( "(") (binary_expression "DAT_00076920 < DAT_00076924" (identifier "DAT_00076920") (< "<") (identifier "DAT_00076924")) () ")")) (compound_statement "{\n            iVar10 = DAT_00076920 * 4;\n            DAT_00076920 = DAT_00076920 + 1;\n            *(int *)(DAT_00076928 + iVar10) = iVar8;\n          }" ({ "{") (expression_statement "iVar10 = DAT_00076920 * 4;" (assignment_expression "iVar10 = DAT_00076920 * 4" (identifier "iVar10") (= "=") (binary_expression "DAT_00076920 * 4" (identifier "DAT_00076920") (* "*") (number_literal "4"))) (; ";")) (expression_statement "DAT_00076920 = DAT_00076920 + 1;" (assignment_expression "DAT_00076920 = DAT_00076920 + 1" (identifier "DAT_00076920") (= "=") (binary_expression "DAT_00076920 + 1" (identifier "DAT_00076920") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*(int *)(DAT_00076928 + iVar10) = iVar8;" (assignment_expression "*(int *)(DAT_00076928 + iVar10) = iVar8" (pointer_expression "*(int *)(DAT_00076928 + iVar10)" (* "*") (cast_expression "(int *)(DAT_00076928 + iVar10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_00076928 + iVar10)" (( "(") (binary_expression "DAT_00076928 + iVar10" (identifier "DAT_00076928") (+ "+") (identifier "iVar10")) () ")")))) (= "=") (identifier "iVar8")) (; ";")) (} "}")) (else_clause "else {\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }" (else "else") (compound_statement "{\n            piVar19 = (int *)0x5;\n            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");\n            error(uVar9);\n          }" ({ "{") (expression_statement "piVar19 = (int *)0x5;" (assignment_expression "piVar19 = (int *)0x5" (identifier "piVar19") (= "=") (cast_expression "(int *)0x5" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";")) (expression_statement "uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");" (assignment_expression "uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n")" (identifier "uVar9") (= "=") (call_expression "dcgettext(0,"Internal error: out of space in the shndx pool.\n")" (identifier "dcgettext") (argument_list "(0,"Internal error: out of space in the shndx pool.\n")" (( "(") (number_literal "0") (, ",") (string_literal ""Internal error: out of space in the shndx pool.\n"" (" """) (string_content "Internal error: out of space in the shndx pool.") (escape_sequence "\n") (" """)) () ")")))) (; ";")) (expression_statement "error(uVar9);" (call_expression "error(uVar9)" (identifier "error") (argument_list "(uVar9)" (( "(") (identifier "uVar9") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n          printf(" %d",iVar8,piVar19);\n        }" (else "else") (compound_statement "{\n          printf(" %d",iVar8,piVar19);\n        }" ({ "{") (expression_statement "printf(" %d",iVar8,piVar19);" (call_expression "printf(" %d",iVar8,piVar19)" (identifier "printf") (argument_list "(" %d",iVar8,piVar19)" (( "(") (string_literal "" %d"" (" """) (string_content " %d") (" """)) (, ",") (identifier "iVar8") (, ",") (identifier "piVar19") () ")"))) (; ";")) (} "}")))) (expression_statement "pbVar14 = pbVar5;" (assignment_expression "pbVar14 = pbVar5" (identifier "pbVar14") (= "=") (identifier "pbVar5")) (; ";")) (if_statement "if (pbVar1 <= pbVar5) break;" (if "if") (parenthesized_expression "(pbVar1 <= pbVar5)" (( "(") (binary_expression "pbVar1 <= pbVar5" (identifier "pbVar1") (<= "<=") (identifier "pbVar5")) () ")")) (break_statement "break;" (break "break") (; ";"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (expression_statement "pbVar14 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar14 = *(byte **)(param_1 + 8)" (identifier "pbVar14") (= "=") (pointer_expression "*(byte **)(param_1 + 8)" (* "*") (cast_expression "(byte **)(param_1 + 8)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "pcVar7 = "Section %s too small for shndx pool\n";" (assignment_expression "pcVar7 = "Section %s too small for shndx pool\n"" (identifier "pcVar7") (= "=") (string_literal ""Section %s too small for shndx pool\n"" (" """) (string_content "Section %s too small for shndx pool") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto LAB_0003156a;" (goto "goto") (statement_identifier "LAB_0003156a") (; ";")) (} "}"))) (labeled_statement "LAB_0003168c:\n  local_b8 = (undefined4 *)((int)local_b8 + 1);" (statement_identifier "LAB_0003168c") (: ":") (expression_statement "local_b8 = (undefined4 *)((int)local_b8 + 1);" (assignment_expression "local_b8 = (undefined4 *)((int)local_b8 + 1)" (identifier "local_b8") (= "=") (cast_expression "(undefined4 *)((int)local_b8 + 1)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b8 + 1)" (( "(") (binary_expression "(int)local_b8 + 1" (cast_expression "(int)local_b8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b8")) (+ "+") (number_literal "1")) () ")")))) (; ";"))) (expression_statement "local_88 = local_88 + 8;" (assignment_expression "local_88 = local_88 + 8" (identifier "local_88") (= "=") (binary_expression "local_88 + 8" (identifier "local_88") (+ "+") (number_literal "8"))) (; ";")) (expression_statement "local_b0 = local_b0 + 4;" (assignment_expression "local_b0 = local_b0 + 4" (identifier "local_b0") (= "=") (binary_expression "local_b0 + 4" (identifier "local_b0") (+ "+") (number_literal "4"))) (; ";")) (if_statement "if (local_bc <= local_b8) goto LAB_000316a3;" (if "if") (parenthesized_expression "(local_bc <= local_b8)" (( "(") (binary_expression "local_bc <= local_b8" (identifier "local_bc") (<= "<=") (identifier "local_b8")) () ")")) (goto_statement "goto LAB_000316a3;" (goto "goto") (statement_identifier "LAB_000316a3") (; ";"))) (goto_statement "goto LAB_0003165a;" (goto "goto") (statement_identifier "LAB_0003165a") (; ";")) (labeled_statement "LAB_000317d8:\n  if (param_2 == 0) {\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }\n  else {\n    putchar(10);\n  }" (statement_identifier "LAB_000317d8") (: ":") (if_statement "if (param_2 == 0) {\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }\n  else {\n    putchar(10);\n  }" (if "if") (parenthesized_expression "(param_2 == 0)" (( "(") (binary_expression "param_2 == 0" (identifier "param_2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }\n  }" ({ "{") (if_statement "if (DAT_00076920 < DAT_00076924) {\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }\n    else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }" (if "if") (parenthesized_expression "(DAT_00076920 < DAT_00076924)" (( "(") (binary_expression "DAT_00076920 < DAT_00076924" (identifier "DAT_00076920") (< "<") (identifier "DAT_00076924")) () ")")) (compound_statement "{\n      iVar8 = DAT_00076920 * 4;\n      DAT_00076920 = DAT_00076920 + 1;\n      *(undefined4 *)(DAT_00076928 + iVar8) = 0;\n    }" ({ "{") (expression_statement "iVar8 = DAT_00076920 * 4;" (assignment_expression "iVar8 = DAT_00076920 * 4" (identifier "iVar8") (= "=") (binary_expression "DAT_00076920 * 4" (identifier "DAT_00076920") (* "*") (number_literal "4"))) (; ";")) (expression_statement "DAT_00076920 = DAT_00076920 + 1;" (assignment_expression "DAT_00076920 = DAT_00076920 + 1" (identifier "DAT_00076920") (= "=") (binary_expression "DAT_00076920 + 1" (identifier "DAT_00076920") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*(undefined4 *)(DAT_00076928 + iVar8) = 0;" (assignment_expression "*(undefined4 *)(DAT_00076928 + iVar8) = 0" (pointer_expression "*(undefined4 *)(DAT_00076928 + iVar8)" (* "*") (cast_expression "(undefined4 *)(DAT_00076928 + iVar8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_00076928 + iVar8)" (( "(") (binary_expression "DAT_00076928 + iVar8" (identifier "DAT_00076928") (+ "+") (identifier "iVar8")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }" (else "else") (compound_statement "{\n      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);\n      error(uVar9);\n    }" ({ "{") (expression_statement "uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5)" (identifier "uVar9") (= "=") (call_expression "dcgettext(0,"Internal error: out of space in the shndx pool.\n",5)" (identifier "dcgettext") (argument_list "(0,"Internal error: out of space in the shndx pool.\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Internal error: out of space in the shndx pool.\n"" (" """) (string_content "Internal error: out of space in the shndx pool.") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(uVar9);" (call_expression "error(uVar9)" (identifier "error") (argument_list "(uVar9)" (( "(") (identifier "uVar9") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n    putchar(10);\n  }" (else "else") (compound_statement "{\n    putchar(10);\n  }" ({ "{") (expression_statement "putchar(10);" (call_expression "putchar(10)" (identifier "putchar") (argument_list "(10)" (( "(") (number_literal "10") () ")"))) (; ";")) (} "}"))))) (goto_statement "goto LAB_0003168c;" (goto "goto") (statement_identifier "LAB_0003168c") (; ";")) (while_statement "while( true ) {\n    iVar8 = iVar8 + -1;\n    bVar16 = *pbVar14 < *pbVar15;\n    bVar17 = *pbVar14 == *pbVar15;\n    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;\n    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n    if (!bVar17) break;\ncode_r0x00031991:\n    if (iVar8 == 0) break;\n  }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n    iVar8 = iVar8 + -1;\n    bVar16 = *pbVar14 < *pbVar15;\n    bVar17 = *pbVar14 == *pbVar15;\n    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;\n    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n    if (!bVar17) break;\ncode_r0x00031991:\n    if (iVar8 == 0) break;\n  }" ({ "{") (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + -1" (identifier "iVar8") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar16 = *pbVar14 < *pbVar15;" (assignment_expression "bVar16 = *pbVar14 < *pbVar15" (identifier "bVar16") (= "=") (binary_expression "*pbVar14 < *pbVar15" (pointer_expression "*pbVar14" (* "*") (identifier "pbVar14")) (< "<") (pointer_expression "*pbVar15" (* "*") (identifier "pbVar15")))) (; ";")) (expression_statement "bVar17 = *pbVar14 == *pbVar15;" (assignment_expression "bVar17 = *pbVar14 == *pbVar15" (identifier "bVar17") (= "=") (binary_expression "*pbVar14 == *pbVar15" (pointer_expression "*pbVar14" (* "*") (identifier "pbVar14")) (== "==") (pointer_expression "*pbVar15" (* "*") (identifier "pbVar15")))) (; ";")) (expression_statement "pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;" (assignment_expression "pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1" (identifier "pbVar14") (= "=") (binary_expression "pbVar14 + (uint)bVar18 * -2 + 1" (binary_expression "pbVar14 + (uint)bVar18 * -2" (identifier "pbVar14") (+ "+") (binary_expression "(uint)bVar18 * -2" (cast_expression "(uint)bVar18" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar18")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;" (assignment_expression "pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1" (identifier "pbVar15") (= "=") (binary_expression "pbVar15 + (uint)bVar18 * -2 + 1" (binary_expression "pbVar15 + (uint)bVar18 * -2" (identifier "pbVar15") (+ "+") (binary_expression "(uint)bVar18 * -2" (cast_expression "(uint)bVar18" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar18")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (!bVar17) break;" (if "if") (parenthesized_expression "(!bVar17)" (( "(") (unary_expression "!bVar17" (! "!") (identifier "bVar17")) () ")")) (break_statement "break;" (break "break") (; ";"))) (labeled_statement "code_r0x00031991:\n    if (iVar8 == 0) break;" (statement_identifier "code_r0x00031991") (: ":") (if_statement "if (iVar8 == 0) break;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";")))) (} "}"))) (expression_statement "bVar17 = !bVar16 && !bVar17;" (assignment_expression "bVar17 = !bVar16 && !bVar17" (identifier "bVar17") (= "=") (binary_expression "!bVar16 && !bVar17" (unary_expression "!bVar16" (! "!") (identifier "bVar16")) (&& "&&") (unary_expression "!bVar17" (! "!") (identifier "bVar17")))) (; ";")) (if_statement "if (param_2 == 0) {\n    if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }\n    if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }\n  }\n  else {\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }" (if "if") (parenthesized_expression "(param_2 == 0)" (( "(") (binary_expression "param_2 == 0" (identifier "param_2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }\n    if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }\n    if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }\n    if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }\n  }" ({ "{") (if_statement "if (bVar17 == bVar16) {\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }\n    else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }" (if "if") (parenthesized_expression "(bVar17 == bVar16)" (( "(") (binary_expression "bVar17 == bVar16" (identifier "bVar17") (== "==") (identifier "bVar16")) () ")")) (compound_statement "{\n      DAT_00076910 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_00076908 = local_78;\n    }" ({ "{") (expression_statement "DAT_00076910 = local_98;" (assignment_expression "DAT_00076910 = local_98" (identifier "DAT_00076910") (= "=") (identifier "local_98")) (; ";")) (expression_statement "local_78 = (undefined4 *)FUN_00031220(local_98,0x68);" (assignment_expression "local_78 = (undefined4 *)FUN_00031220(local_98,0x68)" (identifier "local_78") (= "=") (cast_expression "(undefined4 *)FUN_00031220(local_98,0x68)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00031220(local_98,0x68)" (identifier "FUN_00031220") (argument_list "(local_98,0x68)" (( "(") (identifier "local_98") (, ",") (number_literal "0x68") () ")"))))) (; ";")) (expression_statement "DAT_00076908 = local_78;" (assignment_expression "DAT_00076908 = local_78" (identifier "DAT_00076908") (= "=") (identifier "local_78")) (; ";")) (} "}")) (else_clause "else {\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }" (else "else") (compound_statement "{\n      DAT_00076914 = local_98;\n      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);\n      DAT_0007690c = local_78;\n    }" ({ "{") (expression_statement "DAT_00076914 = local_98;" (assignment_expression "DAT_00076914 = local_98" (identifier "DAT_00076914") (= "=") (identifier "local_98")) (; ";")) (expression_statement "local_78 = (undefined4 *)FUN_00031220(local_98,0x68);" (assignment_expression "local_78 = (undefined4 *)FUN_00031220(local_98,0x68)" (identifier "local_78") (= "=") (cast_expression "(undefined4 *)FUN_00031220(local_98,0x68)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00031220(local_98,0x68)" (identifier "FUN_00031220") (argument_list "(local_98,0x68)" (( "(") (identifier "local_98") (, ",") (number_literal "0x68") () ")"))))) (; ";")) (expression_statement "DAT_0007690c = local_78;" (assignment_expression "DAT_0007690c = local_78" (identifier "DAT_0007690c") (= "=") (identifier "local_78")) (; ";")) (} "}")))) (if_statement "if (local_bc != (undefined4 *)0x0) {\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }" (if "if") (parenthesized_expression "(local_bc != (undefined4 *)0x0)" (( "(") (binary_expression "local_bc != (undefined4 *)0x0" (identifier "local_bc") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000319e5:\n      local_a4 = (undefined4 *)0x0;\n      pbVar14 = local_88;\n      pbVar15 = local_b0;\n      do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);\n      if (param_2 != 0) goto LAB_00032214;\n    }" ({ "{") (labeled_statement "LAB_000319e5:\n      local_a4 = (undefined4 *)0x0;" (statement_identifier "LAB_000319e5") (: ":") (expression_statement "local_a4 = (undefined4 *)0x0;" (assignment_expression "local_a4 = (undefined4 *)0x0" (identifier "local_a4") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";"))) (expression_statement "pbVar14 = local_88;" (assignment_expression "pbVar14 = local_88" (identifier "pbVar14") (= "=") (identifier "local_88")) (; ";")) (expression_statement "pbVar15 = local_b0;" (assignment_expression "pbVar15 = local_b0" (identifier "pbVar15") (= "=") (identifier "local_b0")) (; ";")) (do_statement "do {\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      } while (local_a4 < local_bc);" (do "do") (compound_statement "{\n        pbVar12 = pbVar14 + 8;\n        if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }\n        if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;\nLAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);\n        pbVar14 = pbVar12;\n        pbVar15 = pbVar15 + 4;\n      }" ({ "{") (expression_statement "pbVar12 = pbVar14 + 8;" (assignment_expression "pbVar12 = pbVar14 + 8" (identifier "pbVar12") (= "=") (binary_expression "pbVar14 + 8" (identifier "pbVar14") (+ "+") (number_literal "8"))) (; ";")) (if_statement "if (pbVar1 < pbVar12) {\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }\n        else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }" (if "if") (parenthesized_expression "(pbVar1 < pbVar12)" (( "(") (binary_expression "pbVar1 < pbVar12" (identifier "pbVar1") (< "<") (identifier "pbVar12")) () ")")) (compound_statement "{\n          local_6c = 0;\n          local_68 = 0;\n          local_64 = 0;\n          local_60 = 0;\n        }" ({ "{") (expression_statement "local_6c = 0;" (assignment_expression "local_6c = 0" (identifier "local_6c") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" (identifier "local_68") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_64 = 0;" (assignment_expression "local_64 = 0" (identifier "local_64") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" (identifier "local_60") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }" (else "else") (compound_statement "{\n          FUN_000490b0(pbVar14,&local_6c,&local_64);\n        }" ({ "{") (expression_statement "FUN_000490b0(pbVar14,&local_6c,&local_64);" (call_expression "FUN_000490b0(pbVar14,&local_6c,&local_64)" (identifier "FUN_000490b0") (argument_list "(pbVar14,&local_6c,&local_64)" (( "(") (identifier "pbVar14") (, ",") (pointer_expression "&local_6c" (& "&") (identifier "local_6c")) (, ",") (pointer_expression "&local_64" (& "&") (identifier "local_64")) () ")"))) (; ";")) (} "}")))) (if_statement "if (pbVar15 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }\n        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;" (if "if") (parenthesized_expression "(pbVar15 + 4 < pbVar1)" (( "(") (binary_expression "pbVar15 + 4 < pbVar1" (binary_expression "pbVar15 + 4" (identifier "pbVar15") (+ "+") (number_literal "4")) (< "<") (identifier "pbVar1")) () ")")) (compound_statement "{\n          iVar8 = 4;\nLAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);\n          if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }\n        }" ({ "{") (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" (identifier "iVar8") (= "=") (number_literal "4")) (; ";")) (labeled_statement "LAB_00031a7a:\n          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);" (statement_identifier "LAB_00031a7a") (: ":") (expression_statement "uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);" (assignment_expression "uVar6 = (*DAT_00076b4c)(pbVar15,iVar8)" (identifier "uVar6") (= "=") (call_expression "(*DAT_00076b4c)(pbVar15,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" (( "(") (pointer_expression "*DAT_00076b4c" (* "*") (identifier "DAT_00076b4c")) () ")")) (argument_list "(pbVar15,iVar8)" (( "(") (identifier "pbVar15") (, ",") (identifier "iVar8") () ")")))) (; ";"))) (if_statement "if (uVar6 != 0) {\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }" (if "if") (parenthesized_expression "(uVar6 != 0)" (( "(") (binary_expression "uVar6 != 0" (identifier "uVar6") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }\n            if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }\n          }" ({ "{") (if_statement "if (local_98 < uVar6) {\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }" (if "if") (parenthesized_expression "(local_98 < uVar6)" (( "(") (binary_expression "local_98 < uVar6" (identifier "local_98") (< "<") (identifier "uVar6")) () ")")) (compound_statement "{\n              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);\n              local_b8 = (undefined4 *)local_98;\n              goto LAB_00031dd2;\n            }" ({ "{") (expression_statement "uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5)" (identifier "uVar9") (= "=") (call_expression "dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5)" (identifier "dcgettext") (argument_list "(0,"Row index (%u) is larger than number of used entries (%u)\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Row index (%u) is larger than number of used entries (%u)\n"" (" """) (string_content "Row index (%u) is larger than number of used entries (%u)") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "local_b8 = (undefined4 *)local_98;" (assignment_expression "local_b8 = (undefined4 *)local_98" (identifier "local_b8") (= "=") (cast_expression "(undefined4 *)local_98" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_98"))) (; ";")) (goto_statement "goto LAB_00031dd2;" (goto "goto") (statement_identifier "LAB_00031dd2") (; ";")) (} "}"))) (if_statement "if (param_2 == 0) {\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }\n            else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }" (if "if") (parenthesized_expression "(param_2 == 0)" (( "(") (binary_expression "param_2 == 0" (identifier "param_2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }\n              uVar9 = *(undefined4 *)(pbVar14 + 4);\n              local_8c = local_78 + uVar6 * 0x1a + -0x1a;\n              *local_8c = *(undefined4 *)pbVar14;\n              local_8c[1] = uVar9;\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;\n              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;\n            }" ({ "{") (if_statement "if (pbVar1 <= pbVar12) {\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }" (if "if") (parenthesized_expression "(pbVar1 <= pbVar12)" (( "(") (binary_expression "pbVar1 <= pbVar12" (identifier "pbVar1") (<= "<=") (identifier "pbVar12")) () ")")) (compound_statement "{\n                pcVar7 = "Signature (%p) extends beyond end of space in section\n";\n                goto LAB_0003156a;\n              }" ({ "{") (expression_statement "pcVar7 = "Signature (%p) extends beyond end of space in section\n";" (assignment_expression "pcVar7 = "Signature (%p) extends beyond end of space in section\n"" (identifier "pcVar7") (= "=") (string_literal ""Signature (%p) extends beyond end of space in section\n"" (" """) (string_content "Signature (%p) extends beyond end of space in section") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto LAB_0003156a;" (goto "goto") (statement_identifier "LAB_0003156a") (; ";")) (} "}"))) (expression_statement "uVar9 = *(undefined4 *)(pbVar14 + 4);" (assignment_expression "uVar9 = *(undefined4 *)(pbVar14 + 4)" (identifier "uVar9") (= "=") (pointer_expression "*(undefined4 *)(pbVar14 + 4)" (* "*") (cast_expression "(undefined4 *)(pbVar14 + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar14 + 4)" (( "(") (binary_expression "pbVar14 + 4" (identifier "pbVar14") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "local_8c = local_78 + uVar6 * 0x1a + -0x1a;" (assignment_expression "local_8c = local_78 + uVar6 * 0x1a + -0x1a" (identifier "local_8c") (= "=") (binary_expression "local_78 + uVar6 * 0x1a + -0x1a" (binary_expression "local_78 + uVar6 * 0x1a" (identifier "local_78") (+ "+") (binary_expression "uVar6 * 0x1a" (identifier "uVar6") (* "*") (number_literal "0x1a"))) (+ "+") (number_literal "-0x1a"))) (; ";")) (expression_statement "*local_8c = *(undefined4 *)pbVar14;" (assignment_expression "*local_8c = *(undefined4 *)pbVar14" (pointer_expression "*local_8c" (* "*") (identifier "local_8c")) (= "=") (pointer_expression "*(undefined4 *)pbVar14" (* "*") (cast_expression "(undefined4 *)pbVar14" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar14")))) (; ";")) (expression_statement "local_8c[1] = uVar9;" (assignment_expression "local_8c[1] = uVar9" (subscript_expression "local_8c[1]" (identifier "local_8c") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "uVar9")) (; ";")) (expression_statement "uVar13 = (uVar6 + 0x3fffffff) * uVar2;" (assignment_expression "uVar13 = (uVar6 + 0x3fffffff) * uVar2" (identifier "uVar13") (= "=") (binary_expression "(uVar6 + 0x3fffffff) * uVar2" (parenthesized_expression "(uVar6 + 0x3fffffff)" (( "(") (binary_expression "uVar6 + 0x3fffffff" (identifier "uVar6") (+ "+") (number_literal "0x3fffffff")) () ")")) (* "*") (identifier "uVar2"))) (; ";")) (expression_statement "pbVar14 = pbVar5 + uVar13;" (assignment_expression "pbVar14 = pbVar5 + uVar13" (identifier "pbVar14") (= "=") (binary_expression "pbVar5 + uVar13" (identifier "pbVar5") (+ "+") (identifier "uVar13"))) (; ";")) (if_statement "if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;" (if "if") (parenthesized_expression "((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14))" (( "(") (binary_expression "(CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)" (parenthesized_expression "(CARRY4(uVar13,(uint)pbVar5))" (( "(") (call_expression "CARRY4(uVar13,(uint)pbVar5)" (identifier "CARRY4") (argument_list "(uVar13,(uint)pbVar5)" (( "(") (identifier "uVar13") (, ",") (cast_expression "(uint)pbVar5" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pbVar5")) () ")"))) () ")")) (|| "||") (parenthesized_expression "(pbVar1 < pbVar14)" (( "(") (binary_expression "pbVar1 < pbVar14" (identifier "pbVar1") (< "<") (identifier "pbVar14")) () ")"))) () ")")) (goto_statement "goto LAB_00031db8;" (goto "goto") (statement_identifier "LAB_00031db8") (; ";"))) (if_statement "if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;" (if "if") (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" (( "(") (binary_expression "local_b8 != (undefined4 *)0x0" (identifier "local_b8") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00031af3;" (goto "goto") (statement_identifier "LAB_00031af3") (; ";"))) (} "}")) (else_clause "else {\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }" (else "else") (compound_statement "{\n              uVar13 = (uVar6 + 0x3fffffff) * uVar2;\n              pbVar14 = pbVar5 + uVar13;\n              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }\n              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n              printf(pcVar7,local_a4,uVar9);\n              if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }\n              putchar(10);\n            }" ({ "{") (expression_statement "uVar13 = (uVar6 + 0x3fffffff) * uVar2;" (assignment_expression "uVar13 = (uVar6 + 0x3fffffff) * uVar2" (identifier "uVar13") (= "=") (binary_expression "(uVar6 + 0x3fffffff) * uVar2" (parenthesized_expression "(uVar6 + 0x3fffffff)" (( "(") (binary_expression "uVar6 + 0x3fffffff" (identifier "uVar6") (+ "+") (number_literal "0x3fffffff")) () ")")) (* "*") (identifier "uVar2"))) (; ";")) (expression_statement "pbVar14 = pbVar5 + uVar13;" (assignment_expression "pbVar14 = pbVar5 + uVar13" (identifier "pbVar14") (= "=") (binary_expression "pbVar5 + uVar13" (identifier "pbVar5") (+ "+") (identifier "uVar13"))) (; ";")) (if_statement "if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }" (if "if") (parenthesized_expression "((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14))" (( "(") (binary_expression "(CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)" (parenthesized_expression "(CARRY4(uVar13,(uint)pbVar5))" (( "(") (call_expression "CARRY4(uVar13,(uint)pbVar5)" (identifier "CARRY4") (argument_list "(uVar13,(uint)pbVar5)" (( "(") (identifier "uVar13") (, ",") (cast_expression "(uint)pbVar5" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pbVar5")) () ")"))) () ")")) (|| "||") (parenthesized_expression "(pbVar1 < pbVar14)" (( "(") (binary_expression "pbVar1 < pbVar14" (identifier "pbVar1") (< "<") (identifier "pbVar14")) () ")"))) () ")")) (compound_statement "{\nLAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);\nLAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);\n                return 0;\n              }" ({ "{") (labeled_statement "LAB_00031db8:\n                uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);" (statement_identifier "LAB_00031db8") (: ":") (expression_statement "uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5);" (assignment_expression "uVar9 = dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5)" (identifier "uVar9") (= "=") (call_expression "dcgettext(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5)" (identifier "dcgettext") (argument_list "(0,\n                                  "Row index (%u) * num columns (%u) > space remaining in section\n"\n                                  ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""Row index (%u) * num columns (%u) > space remaining in section\n"" (" """) (string_content "Row index (%u) * num columns (%u) > space remaining in section") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";"))) (labeled_statement "LAB_00031dd2:\n                warn(uVar9,uVar6,local_b8);" (statement_identifier "LAB_00031dd2") (: ":") (expression_statement "warn(uVar9,uVar6,local_b8);" (call_expression "warn(uVar9,uVar6,local_b8)" (identifier "warn") (argument_list "(uVar9,uVar6,local_b8)" (( "(") (identifier "uVar9") (, ",") (identifier "uVar6") (, ",") (identifier "local_b8") () ")"))) (; ";"))) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "uVar9 = FUN_0001eb80(local_64,local_60,local_5c);" (assignment_expression "uVar9 = FUN_0001eb80(local_64,local_60,local_5c)" (identifier "uVar9") (= "=") (call_expression "FUN_0001eb80(local_64,local_60,local_5c)" (identifier "FUN_0001eb80") (argument_list "(local_64,local_60,local_5c)" (( "(") (identifier "local_64") (, ",") (identifier "local_60") (, ",") (identifier "local_5c") () ")")))) (; ";")) (expression_statement "pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5)" (identifier "pcVar7") (= "=") (cast_expression "(char *)dcgettext(0,"  [%3d] 0x%s",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  [%3d] 0x%s",5)" (identifier "dcgettext") (argument_list "(0,"  [%3d] 0x%s",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  [%3d] 0x%s"" (" """) (string_content "  [%3d] 0x%s") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar7,local_a4,uVar9);" (call_expression "printf(pcVar7,local_a4,uVar9)" (identifier "printf") (argument_list "(pcVar7,local_a4,uVar9)" (( "(") (identifier "pcVar7") (, ",") (identifier "local_a4") (, ",") (identifier "uVar9") () ")"))) (; ";")) (if_statement "if (local_b8 != (undefined4 *)0x0) {\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }" (if "if") (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" (( "(") (binary_expression "local_b8 != (undefined4 *)0x0" (identifier "local_b8") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                local_8c = local_78 + uVar6 * 0x1a + -0x1a;\nLAB_00031af3:\n                local_b4 = (undefined4 *)0x0;\n                pbVar11 = local_a8;\n                do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);\n                if (param_2 == 0) goto LAB_00031a20;\n              }" ({ "{") (expression_statement "local_8c = local_78 + uVar6 * 0x1a + -0x1a;" (assignment_expression "local_8c = local_78 + uVar6 * 0x1a + -0x1a" (identifier "local_8c") (= "=") (binary_expression "local_78 + uVar6 * 0x1a + -0x1a" (binary_expression "local_78 + uVar6 * 0x1a" (identifier "local_78") (+ "+") (binary_expression "uVar6 * 0x1a" (identifier "uVar6") (* "*") (number_literal "0x1a"))) (+ "+") (number_literal "-0x1a"))) (; ";")) (labeled_statement "LAB_00031af3:\n                local_b4 = (undefined4 *)0x0;" (statement_identifier "LAB_00031af3") (: ":") (expression_statement "local_b4 = (undefined4 *)0x0;" (assignment_expression "local_b4 = (undefined4 *)0x0" (identifier "local_b4") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";"))) (expression_statement "pbVar11 = local_a8;" (assignment_expression "pbVar11 = local_a8" (identifier "pbVar11") (= "=") (identifier "local_a8")) (; ";")) (do_statement "do {\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                } while (local_b4 < local_b8);" (do "do") (compound_statement "{\n                  local_b4 = (undefined4 *)((int)local_b4 + 1);\n                  if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }\nLAB_00031b71:\n                  pbVar11 = pbVar11 + 4;\n                  pbVar14 = pbVar14 + 4;\n                }" ({ "{") (expression_statement "local_b4 = (undefined4 *)((int)local_b4 + 1);" (assignment_expression "local_b4 = (undefined4 *)((int)local_b4 + 1)" (identifier "local_b4") (= "=") (cast_expression "(undefined4 *)((int)local_b4 + 1)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b4 + 1)" (( "(") (binary_expression "(int)local_b4 + 1" (cast_expression "(int)local_b4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b4")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (if_statement "if (pbVar14 + 4 < pbVar1) {\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }\n                  else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }" (if "if") (parenthesized_expression "(pbVar14 + 4 < pbVar1)" (( "(") (binary_expression "pbVar14 + 4 < pbVar1" (binary_expression "pbVar14 + 4" (identifier "pbVar14") (+ "+") (number_literal "4")) (< "<") (identifier "pbVar1")) () ")")) (compound_statement "{\n                    iVar8 = 4;\nLAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);\n                    if (param_2 == 0) goto LAB_00031b3e;\nLAB_00031bf1:\n                    printf(" %8d",uVar9);\n                  }" ({ "{") (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" (identifier "iVar8") (= "=") (number_literal "4")) (; ";")) (labeled_statement "LAB_00031bd5:\n                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);" (statement_identifier "LAB_00031bd5") (: ":") (expression_statement "uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);" (assignment_expression "uVar9 = (*DAT_00076b4c)(pbVar14,iVar8)" (identifier "uVar9") (= "=") (call_expression "(*DAT_00076b4c)(pbVar14,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" (( "(") (pointer_expression "*DAT_00076b4c" (* "*") (identifier "DAT_00076b4c")) () ")")) (argument_list "(pbVar14,iVar8)" (( "(") (identifier "pbVar14") (, ",") (identifier "iVar8") () ")")))) (; ";"))) (if_statement "if (param_2 == 0) goto LAB_00031b3e;" (if "if") (parenthesized_expression "(param_2 == 0)" (( "(") (binary_expression "param_2 == 0" (identifier "param_2") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00031b3e;" (goto "goto") (statement_identifier "LAB_00031b3e") (; ";"))) (labeled_statement "LAB_00031bf1:\n                    printf(" %8d",uVar9);" (statement_identifier "LAB_00031bf1") (: ":") (expression_statement "printf(" %8d",uVar9);" (call_expression "printf(" %8d",uVar9)" (identifier "printf") (argument_list "(" %8d",uVar9)" (( "(") (string_literal "" %8d"" (" """) (string_content " %8d") (" """)) (, ",") (identifier "uVar9") () ")"))) (; ";"))) (} "}")) (else_clause "else {\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }" (else "else") (compound_statement "{\n                    uVar9 = 0;\n                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;\n                    if (param_2 != 0) goto LAB_00031bf1;\nLAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }\n                    local_8c[uVar6 * 2 + 2] = uVar9;\n                    local_8c[uVar6 * 2 + 3] = 0;\n                  }" ({ "{") (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" (identifier "uVar9") (= "=") (number_literal "0")) (; ";")) (if_statement "if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n                    goto LAB_00031bd5;" (if "if") (parenthesized_expression "((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))" (( "(") (binary_expression "(pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar14 < pbVar1)" (( "(") (binary_expression "pbVar14 < pbVar1" (identifier "pbVar14") (< "<") (identifier "pbVar1")) () ")")) (&& "&&") (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (( "(") (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar14" (identifier "iVar8") (= "=") (binary_expression "(int)pbVar1 - (int)pbVar14" (cast_expression "(int)pbVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar1")) (- "-") (cast_expression "(int)pbVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar14")))) (, ",") (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" (identifier "iVar8") (- "-") (number_literal "1U")) (< "<") (number_literal "8"))) () ")"))) () ")")) (goto_statement "goto LAB_00031bd5;" (goto "goto") (statement_identifier "LAB_00031bd5") (; ";"))) (if_statement "if (param_2 != 0) goto LAB_00031bf1;" (if "if") (parenthesized_expression "(param_2 != 0)" (( "(") (binary_expression "param_2 != 0" (identifier "param_2") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00031bf1;" (goto "goto") (statement_identifier "LAB_00031bf1") (; ";"))) (labeled_statement "LAB_00031b3e:\n                    if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }" (statement_identifier "LAB_00031b3e") (: ":") (if_statement "if (pbVar11 + 4 < pbVar1) {\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }\n                    else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }" (if "if") (parenthesized_expression "(pbVar11 + 4 < pbVar1)" (( "(") (binary_expression "pbVar11 + 4 < pbVar1" (binary_expression "pbVar11 + 4" (identifier "pbVar11") (+ "+") (number_literal "4")) (< "<") (identifier "pbVar1")) () ")")) (compound_statement "{\n                      iVar8 = 4;\nLAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);\n                      if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }\n                    }" ({ "{") (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" (identifier "iVar8") (= "=") (number_literal "4")) (; ";")) (labeled_statement "LAB_00031c15:\n                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);" (statement_identifier "LAB_00031c15") (: ":") (expression_statement "uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);" (assignment_expression "uVar6 = (*DAT_00076b4c)(pbVar11,iVar8)" (identifier "uVar6") (= "=") (call_expression "(*DAT_00076b4c)(pbVar11,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" (( "(") (pointer_expression "*DAT_00076b4c" (* "*") (identifier "DAT_00076b4c")) () ")")) (argument_list "(pbVar11,iVar8)" (( "(") (identifier "pbVar11") (, ",") (identifier "iVar8") () ")")))) (; ";"))) (if_statement "if (7 < uVar6) {\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }" (if "if") (parenthesized_expression "(7 < uVar6)" (( "(") (binary_expression "7 < uVar6" (number_literal "7") (< "<") (identifier "uVar6")) () ")")) (compound_statement "{\n                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                        warn(uVar9,uVar6);\n                        goto LAB_00031b71;\n                      }" ({ "{") (expression_statement "uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5)" (identifier "uVar9") (= "=") (call_expression "dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5)" (identifier "dcgettext") (argument_list "(0,"Overlarge Dwarf section index detected: %u\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Overlarge Dwarf section index detected: %u\n"" (" """) (string_content "Overlarge Dwarf section index detected: %u") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar9,uVar6);" (call_expression "warn(uVar9,uVar6)" (identifier "warn") (argument_list "(uVar9,uVar6)" (( "(") (identifier "uVar9") (, ",") (identifier "uVar6") () ")"))) (; ";")) (goto_statement "goto LAB_00031b71;" (goto "goto") (statement_identifier "LAB_00031b71") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }" (else "else") (compound_statement "{\n                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;\n                      uVar6 = 0;\n                    }" ({ "{") (if_statement "if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         ) goto LAB_00031c15;" (if "if") (parenthesized_expression "((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)\n                         )" (( "(") (binary_expression "(pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar11 < pbVar1)" (( "(") (binary_expression "pbVar11 < pbVar1" (identifier "pbVar11") (< "<") (identifier "pbVar1")) () ")")) (&& "&&") (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)" (( "(") (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar11" (identifier "iVar8") (= "=") (binary_expression "(int)pbVar1 - (int)pbVar11" (cast_expression "(int)pbVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar1")) (- "-") (cast_expression "(int)pbVar11" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar11")))) (, ",") (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" (identifier "iVar8") (- "-") (number_literal "1U")) (< "<") (number_literal "8"))) () ")"))) () ")")) (goto_statement "goto LAB_00031c15;" (goto "goto") (statement_identifier "LAB_00031c15") (; ";"))) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" (identifier "uVar6") (= "=") (number_literal "0")) (; ";")) (} "}"))))) (expression_statement "local_8c[uVar6 * 2 + 2] = uVar9;" (assignment_expression "local_8c[uVar6 * 2 + 2] = uVar9" (subscript_expression "local_8c[uVar6 * 2 + 2]" (identifier "local_8c") ([ "[") (binary_expression "uVar6 * 2 + 2" (binary_expression "uVar6 * 2" (identifier "uVar6") (* "*") (number_literal "2")) (+ "+") (number_literal "2")) (] "]")) (= "=") (identifier "uVar9")) (; ";")) (expression_statement "local_8c[uVar6 * 2 + 3] = 0;" (assignment_expression "local_8c[uVar6 * 2 + 3] = 0" (subscript_expression "local_8c[uVar6 * 2 + 3]" (identifier "local_8c") ([ "[") (binary_expression "uVar6 * 2 + 3" (binary_expression "uVar6 * 2" (identifier "uVar6") (* "*") (number_literal "2")) (+ "+") (number_literal "3")) (] "]")) (= "=") (number_literal "0")) (; ";")) (} "}")))) (labeled_statement "LAB_00031b71:\n                  pbVar11 = pbVar11 + 4;" (statement_identifier "LAB_00031b71") (: ":") (expression_statement "pbVar11 = pbVar11 + 4;" (assignment_expression "pbVar11 = pbVar11 + 4" (identifier "pbVar11") (= "=") (binary_expression "pbVar11 + 4" (identifier "pbVar11") (+ "+") (number_literal "4"))) (; ";"))) (expression_statement "pbVar14 = pbVar14 + 4;" (assignment_expression "pbVar14 = pbVar14 + 4" (identifier "pbVar14") (= "=") (binary_expression "pbVar14 + 4" (identifier "pbVar14") (+ "+") (number_literal "4"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_b4 < local_b8)" (( "(") (binary_expression "local_b4 < local_b8" (identifier "local_b4") (< "<") (identifier "local_b8")) () ")")) (; ";")) (if_statement "if (param_2 == 0) goto LAB_00031a20;" (if "if") (parenthesized_expression "(param_2 == 0)" (( "(") (binary_expression "param_2 == 0" (identifier "param_2") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00031a20;" (goto "goto") (statement_identifier "LAB_00031a20") (; ";"))) (} "}"))) (expression_statement "putchar(10);" (call_expression "putchar(10)" (identifier "putchar") (argument_list "(10)" (( "(") (number_literal "10") () ")"))) (; ";")) (} "}")))) (} "}"))) (} "}")) (else_clause "else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;" (else "else") (if_statement "if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))\n        goto LAB_00031a7a;" (if "if") (parenthesized_expression "((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))" (( "(") (binary_expression "(pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar15 < pbVar1)" (( "(") (binary_expression "pbVar15 < pbVar1" (identifier "pbVar15") (< "<") (identifier "pbVar1")) () ")")) (&& "&&") (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8)" (( "(") (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar15" (identifier "iVar8") (= "=") (binary_expression "(int)pbVar1 - (int)pbVar15" (cast_expression "(int)pbVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar1")) (- "-") (cast_expression "(int)pbVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar15")))) (, ",") (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" (identifier "iVar8") (- "-") (number_literal "1U")) (< "<") (number_literal "8"))) () ")"))) () ")")) (goto_statement "goto LAB_00031a7a;" (goto "goto") (statement_identifier "LAB_00031a7a") (; ";"))))) (labeled_statement "LAB_00031a20:\n        local_a4 = (undefined4 *)((int)local_a4 + 1);" (statement_identifier "LAB_00031a20") (: ":") (expression_statement "local_a4 = (undefined4 *)((int)local_a4 + 1);" (assignment_expression "local_a4 = (undefined4 *)((int)local_a4 + 1)" (identifier "local_a4") (= "=") (cast_expression "(undefined4 *)((int)local_a4 + 1)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_a4 + 1)" (( "(") (binary_expression "(int)local_a4 + 1" (cast_expression "(int)local_a4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_a4")) (+ "+") (number_literal "1")) () ")")))) (; ";"))) (expression_statement "pbVar14 = pbVar12;" (assignment_expression "pbVar14 = pbVar12" (identifier "pbVar14") (= "=") (identifier "pbVar12")) (; ";")) (expression_statement "pbVar15 = pbVar15 + 4;" (assignment_expression "pbVar15 = pbVar15 + 4" (identifier "pbVar15") (= "=") (binary_expression "pbVar15 + 4" (identifier "pbVar15") (+ "+") (number_literal "4"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_a4 < local_bc)" (( "(") (binary_expression "local_a4 < local_bc" (identifier "local_a4") (< "<") (identifier "local_bc")) () ")")) (; ";")) (if_statement "if (param_2 != 0) goto LAB_00032214;" (if "if") (parenthesized_expression "(param_2 != 0)" (( "(") (binary_expression "param_2 != 0" (identifier "param_2") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00032214;" (goto "goto") (statement_identifier "LAB_00032214") (; ";"))) (} "}"))) (if_statement "if (local_b8 != (undefined4 *)0x0) {\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }" (if "if") (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" (( "(") (binary_expression "local_b8 != (undefined4 *)0x0" (identifier "local_b8") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_00031e1e:\n      uVar6 = 0;\n      pbVar14 = local_a8;\n      do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);\n      if (param_2 != 0) goto LAB_0003227a;\n    }" ({ "{") (labeled_statement "LAB_00031e1e:\n      uVar6 = 0;" (statement_identifier "LAB_00031e1e") (: ":") (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" (identifier "uVar6") (= "=") (number_literal "0")) (; ";"))) (expression_statement "pbVar14 = local_a8;" (assignment_expression "pbVar14 = local_a8" (identifier "pbVar14") (= "=") (identifier "local_a8")) (; ";")) (do_statement "do {\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      } while (uVar6 < local_b8);" (do "do") (compound_statement "{\n        uVar6 = uVar6 + 1;\n        if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;\n        if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }\n        pbVar14 = pbVar14 + 4;\n      }" ({ "{") (expression_statement "uVar6 = uVar6 + 1;" (assignment_expression "uVar6 = uVar6 + 1" (identifier "uVar6") (= "=") (binary_expression "uVar6 + 1" (identifier "uVar6") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (pbVar14 + 4 < pbVar1) {\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;" (if "if") (parenthesized_expression "(pbVar14 + 4 < pbVar1)" (( "(") (binary_expression "pbVar14 + 4 < pbVar1" (binary_expression "pbVar14 + 4" (identifier "pbVar14") (+ "+") (number_literal "4")) (< "<") (identifier "pbVar1")) () ")")) (compound_statement "{\n          iVar8 = 4;\nLAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }" ({ "{") (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" (identifier "iVar8") (= "=") (number_literal "4")) (; ";")) (labeled_statement "LAB_00031e67:\n          (*DAT_00076b4c)(pbVar14,iVar8);" (statement_identifier "LAB_00031e67") (: ":") (expression_statement "(*DAT_00076b4c)(pbVar14,iVar8);" (call_expression "(*DAT_00076b4c)(pbVar14,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" (( "(") (pointer_expression "*DAT_00076b4c" (* "*") (identifier "DAT_00076b4c")) () ")")) (argument_list "(pbVar14,iVar8)" (( "(") (identifier "pbVar14") (, ",") (identifier "iVar8") () ")"))) (; ";"))) (} "}")) (else_clause "else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;" (else "else") (if_statement "if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_00031e67;" (if "if") (parenthesized_expression "((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))" (( "(") (binary_expression "(pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar14 < pbVar1)" (( "(") (binary_expression "pbVar14 < pbVar1" (identifier "pbVar14") (< "<") (identifier "pbVar1")) () ")")) (&& "&&") (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (( "(") (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar14" (identifier "iVar8") (= "=") (binary_expression "(int)pbVar1 - (int)pbVar14" (cast_expression "(int)pbVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar1")) (- "-") (cast_expression "(int)pbVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar14")))) (, ",") (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" (identifier "iVar8") (- "-") (number_literal "1U")) (< "<") (number_literal "8"))) () ")"))) () ")")) (goto_statement "goto LAB_00031e67;" (goto "goto") (statement_identifier "LAB_00031e67") (; ";"))))) (if_statement "if (param_2 != 0) {\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }" (if "if") (parenthesized_expression "(param_2 != 0)" (( "(") (binary_expression "param_2 != 0" (identifier "param_2") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          uVar9 = FUN_0001e440();\n          printf(" %8s",uVar9);\n        }" ({ "{") (expression_statement "uVar9 = FUN_0001e440();" (assignment_expression "uVar9 = FUN_0001e440()" (identifier "uVar9") (= "=") (call_expression "FUN_0001e440()" (identifier "FUN_0001e440") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "printf(" %8s",uVar9);" (call_expression "printf(" %8s",uVar9)" (identifier "printf") (argument_list "(" %8s",uVar9)" (( "(") (string_literal "" %8s"" (" """) (string_content " %8s") (" """)) (, ",") (identifier "uVar9") () ")"))) (; ";")) (} "}"))) (expression_statement "pbVar14 = pbVar14 + 4;" (assignment_expression "pbVar14 = pbVar14 + 4" (identifier "pbVar14") (= "=") (binary_expression "pbVar14 + 4" (identifier "pbVar14") (+ "+") (number_literal "4"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(uVar6 < local_b8)" (( "(") (binary_expression "uVar6 < local_b8" (identifier "uVar6") (< "<") (identifier "local_b8")) () ")")) (; ";")) (if_statement "if (param_2 != 0) goto LAB_0003227a;" (if "if") (parenthesized_expression "(param_2 != 0)" (( "(") (binary_expression "param_2 != 0" (identifier "param_2") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0003227a;" (goto "goto") (statement_identifier "LAB_0003227a") (; ";"))) (} "}"))) (if_statement "if (local_bc == (undefined4 *)0x0) {\n      return 1;\n    }" (if "if") (parenthesized_expression "(local_bc == (undefined4 *)0x0)" (( "(") (binary_expression "local_bc == (undefined4 *)0x0" (identifier "local_bc") (== "==") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      return 1;\n    }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }" (else "else") (compound_statement "{\n    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    pbVar14 = local_a8;\n    if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }\n    putchar(10);\n    local_78 = (undefined4 *)0x0;\n    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;\n    local_78 = local_bc;\nLAB_00032214:\n    putchar(10);\n    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);\n    printf(pcVar7);\n    if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }\n    printf("  slot  %-16s  ",uVar9);\n    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;\nLAB_0003227a:\n    putchar(10);\n    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;\n  }" ({ "{") (expression_statement "pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Offset table\n",5)" (identifier "pcVar7") (= "=") (cast_expression "(char *)dcgettext(0,"  Offset table\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Offset table\n",5)" (identifier "dcgettext") (argument_list "(0,"  Offset table\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Offset table\n"" (" """) (string_content "  Offset table") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar7);" (call_expression "printf(pcVar7)" (identifier "printf") (argument_list "(pcVar7)" (( "(") (identifier "pcVar7") () ")"))) (; ";")) (if_statement "if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" (if "if") (parenthesized_expression "(bVar17 == bVar16)" (( "(") (binary_expression "bVar17 == bVar16" (identifier "bVar17") (== "==") (identifier "bVar16")) () ")")) (compound_statement "{\n      uVar9 = dcgettext(0,"signature",5);\n    }" ({ "{") (expression_statement "uVar9 = dcgettext(0,"signature",5);" (assignment_expression "uVar9 = dcgettext(0,"signature",5)" (identifier "uVar9") (= "=") (call_expression "dcgettext(0,"signature",5)" (identifier "dcgettext") (argument_list "(0,"signature",5)" (( "(") (number_literal "0") (, ",") (string_literal ""signature"" (" """) (string_content "signature") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (} "}")) (else_clause "else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" (else "else") (compound_statement "{\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" ({ "{") (expression_statement "uVar9 = dcgettext(0,"dwo_id",5);" (assignment_expression "uVar9 = dcgettext(0,"dwo_id",5)" (identifier "uVar9") (= "=") (call_expression "dcgettext(0,"dwo_id",5)" (identifier "dcgettext") (argument_list "(0,"dwo_id",5)" (( "(") (number_literal "0") (, ",") (string_literal ""dwo_id"" (" """) (string_content "dwo_id") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (} "}")))) (expression_statement "printf("  slot  %-16s  ",uVar9);" (call_expression "printf("  slot  %-16s  ",uVar9)" (identifier "printf") (argument_list "("  slot  %-16s  ",uVar9)" (( "(") (string_literal ""  slot  %-16s  "" (" """) (string_content "  slot  %-16s  ") (" """)) (, ",") (identifier "uVar9") () ")"))) (; ";")) (expression_statement "pbVar14 = local_a8;" (assignment_expression "pbVar14 = local_a8" (identifier "pbVar14") (= "=") (identifier "local_a8")) (; ";")) (if_statement "if (local_b8 != (undefined4 *)0x0) {\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }" (if "if") (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" (( "(") (binary_expression "local_b8 != (undefined4 *)0x0" (identifier "local_b8") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);\n    }" ({ "{") (do_statement "do {\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      } while (pbVar5 != pbVar15);" (do "do") (compound_statement "{\n        pbVar15 = pbVar14 + 4;\n        if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;\n        uVar9 = FUN_0001e440();\n        printf(" %8s",uVar9);\n        pbVar14 = pbVar15;\n      }" ({ "{") (expression_statement "pbVar15 = pbVar14 + 4;" (assignment_expression "pbVar15 = pbVar14 + 4" (identifier "pbVar15") (= "=") (binary_expression "pbVar14 + 4" (identifier "pbVar14") (+ "+") (number_literal "4"))) (; ";")) (if_statement "if (pbVar15 < pbVar1) {\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }\n        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;" (if "if") (parenthesized_expression "(pbVar15 < pbVar1)" (( "(") (binary_expression "pbVar15 < pbVar1" (identifier "pbVar15") (< "<") (identifier "pbVar1")) () ")")) (compound_statement "{\n          iVar8 = 4;\nLAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);\n        }" ({ "{") (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" (identifier "iVar8") (= "=") (number_literal "4")) (; ";")) (labeled_statement "LAB_000321db:\n          (*DAT_00076b4c)(pbVar14,iVar8);" (statement_identifier "LAB_000321db") (: ":") (expression_statement "(*DAT_00076b4c)(pbVar14,iVar8);" (call_expression "(*DAT_00076b4c)(pbVar14,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" (( "(") (pointer_expression "*DAT_00076b4c" (* "*") (identifier "DAT_00076b4c")) () ")")) (argument_list "(pbVar14,iVar8)" (( "(") (identifier "pbVar14") (, ",") (identifier "iVar8") () ")"))) (; ";"))) (} "}")) (else_clause "else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;" (else "else") (if_statement "if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n        goto LAB_000321db;" (if "if") (parenthesized_expression "((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))" (( "(") (binary_expression "(pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar14 < pbVar1)" (( "(") (binary_expression "pbVar14 < pbVar1" (identifier "pbVar14") (< "<") (identifier "pbVar1")) () ")")) (&& "&&") (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (( "(") (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar14" (identifier "iVar8") (= "=") (binary_expression "(int)pbVar1 - (int)pbVar14" (cast_expression "(int)pbVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar1")) (- "-") (cast_expression "(int)pbVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar14")))) (, ",") (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" (identifier "iVar8") (- "-") (number_literal "1U")) (< "<") (number_literal "8"))) () ")"))) () ")")) (goto_statement "goto LAB_000321db;" (goto "goto") (statement_identifier "LAB_000321db") (; ";"))))) (expression_statement "uVar9 = FUN_0001e440();" (assignment_expression "uVar9 = FUN_0001e440()" (identifier "uVar9") (= "=") (call_expression "FUN_0001e440()" (identifier "FUN_0001e440") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "printf(" %8s",uVar9);" (call_expression "printf(" %8s",uVar9)" (identifier "printf") (argument_list "(" %8s",uVar9)" (( "(") (string_literal "" %8s"" (" """) (string_content " %8s") (" """)) (, ",") (identifier "uVar9") () ")"))) (; ";")) (expression_statement "pbVar14 = pbVar15;" (assignment_expression "pbVar14 = pbVar15" (identifier "pbVar14") (= "=") (identifier "pbVar15")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pbVar5 != pbVar15)" (( "(") (binary_expression "pbVar5 != pbVar15" (identifier "pbVar5") (!= "!=") (identifier "pbVar15")) () ")")) (; ";")) (} "}"))) (expression_statement "putchar(10);" (call_expression "putchar(10)" (identifier "putchar") (argument_list "(10)" (( "(") (number_literal "10") () ")"))) (; ";")) (expression_statement "local_78 = (undefined4 *)0x0;" (assignment_expression "local_78 = (undefined4 *)0x0" (identifier "local_78") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;" (if "if") (parenthesized_expression "(local_bc != (undefined4 *)0x0)" (( "(") (binary_expression "local_bc != (undefined4 *)0x0" (identifier "local_bc") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000319e5;" (goto "goto") (statement_identifier "LAB_000319e5") (; ";"))) (expression_statement "local_78 = local_bc;" (assignment_expression "local_78 = local_bc" (identifier "local_78") (= "=") (identifier "local_bc")) (; ";")) (labeled_statement "LAB_00032214:\n    putchar(10);" (statement_identifier "LAB_00032214") (: ":") (expression_statement "putchar(10);" (call_expression "putchar(10)" (identifier "putchar") (argument_list "(10)" (( "(") (number_literal "10") () ")"))) (; ";"))) (expression_statement "pcVar7 = (char *)dcgettext(0,"  Size table\n",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  Size table\n",5)" (identifier "pcVar7") (= "=") (cast_expression "(char *)dcgettext(0,"  Size table\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Size table\n",5)" (identifier "dcgettext") (argument_list "(0,"  Size table\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Size table\n"" (" """) (string_content "  Size table") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar7);" (call_expression "printf(pcVar7)" (identifier "printf") (argument_list "(pcVar7)" (( "(") (identifier "pcVar7") () ")"))) (; ";")) (if_statement "if (bVar17 == bVar16) {\n      uVar9 = dcgettext(0,"signature",5);\n    }\n    else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" (if "if") (parenthesized_expression "(bVar17 == bVar16)" (( "(") (binary_expression "bVar17 == bVar16" (identifier "bVar17") (== "==") (identifier "bVar16")) () ")")) (compound_statement "{\n      uVar9 = dcgettext(0,"signature",5);\n    }" ({ "{") (expression_statement "uVar9 = dcgettext(0,"signature",5);" (assignment_expression "uVar9 = dcgettext(0,"signature",5)" (identifier "uVar9") (= "=") (call_expression "dcgettext(0,"signature",5)" (identifier "dcgettext") (argument_list "(0,"signature",5)" (( "(") (number_literal "0") (, ",") (string_literal ""signature"" (" """) (string_content "signature") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (} "}")) (else_clause "else {\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" (else "else") (compound_statement "{\n      uVar9 = dcgettext(0,"dwo_id",5);\n    }" ({ "{") (expression_statement "uVar9 = dcgettext(0,"dwo_id",5);" (assignment_expression "uVar9 = dcgettext(0,"dwo_id",5)" (identifier "uVar9") (= "=") (call_expression "dcgettext(0,"dwo_id",5)" (identifier "dcgettext") (argument_list "(0,"dwo_id",5)" (( "(") (number_literal "0") (, ",") (string_literal ""dwo_id"" (" """) (string_content "dwo_id") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (} "}")))) (expression_statement "printf("  slot  %-16s  ",uVar9);" (call_expression "printf("  slot  %-16s  ",uVar9)" (identifier "printf") (argument_list "("  slot  %-16s  ",uVar9)" (( "(") (string_literal ""  slot  %-16s  "" (" """) (string_content "  slot  %-16s  ") (" """)) (, ",") (identifier "uVar9") () ")"))) (; ";")) (if_statement "if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;" (if "if") (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" (( "(") (binary_expression "local_b8 != (undefined4 *)0x0" (identifier "local_b8") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00031e1e;" (goto "goto") (statement_identifier "LAB_00031e1e") (; ";"))) (labeled_statement "LAB_0003227a:\n    putchar(10);" (statement_identifier "LAB_0003227a") (: ":") (expression_statement "putchar(10);" (call_expression "putchar(10)" (identifier "putchar") (argument_list "(10)" (( "(") (number_literal "10") () ")"))) (; ";"))) (if_statement "if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;" (if "if") (parenthesized_expression "(local_bc == (undefined4 *)0x0)" (( "(") (binary_expression "local_bc == (undefined4 *)0x0" (identifier "local_bc") (== "==") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000316b0;" (goto "goto") (statement_identifier "LAB_000316b0") (; ";"))) (} "}")))) (expression_statement "local_b4 = (undefined4 *)0x0;" (assignment_expression "local_b4 = (undefined4 *)0x0" (identifier "local_b4") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pbVar14 = local_b0;" (assignment_expression "pbVar14 = local_b0" (identifier "pbVar14") (= "=") (identifier "local_b0")) (; ";")) (do_statement "do {\n    if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }\n    if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined4 *)((int)local_b4 + 1);\n    local_88 = local_88 + 8;\n    pbVar14 = pbVar14 + 4;\n  } while (local_b4 < local_bc);" (do "do") (compound_statement "{\n    if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }\n    if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;\n    local_b4 = (undefined4 *)((int)local_b4 + 1);\n    local_88 = local_88 + 8;\n    pbVar14 = pbVar14 + 4;\n  }" ({ "{") (if_statement "if (pbVar1 < local_88 + 8) {\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }\n    else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }" (if "if") (parenthesized_expression "(pbVar1 < local_88 + 8)" (( "(") (binary_expression "pbVar1 < local_88 + 8" (identifier "pbVar1") (< "<") (binary_expression "local_88 + 8" (identifier "local_88") (+ "+") (number_literal "8"))) () ")")) (compound_statement "{\n      local_6c = 0;\n      local_68 = 0;\n      local_64 = 0;\n      local_60 = 0;\n    }" ({ "{") (expression_statement "local_6c = 0;" (assignment_expression "local_6c = 0" (identifier "local_6c") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" (identifier "local_68") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_64 = 0;" (assignment_expression "local_64 = 0" (identifier "local_64") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" (identifier "local_60") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }" (else "else") (compound_statement "{\n      FUN_000490b0(local_88,&local_6c,&local_64);\n    }" ({ "{") (expression_statement "FUN_000490b0(local_88,&local_6c,&local_64);" (call_expression "FUN_000490b0(local_88,&local_6c,&local_64)" (identifier "FUN_000490b0") (argument_list "(local_88,&local_6c,&local_64)" (( "(") (identifier "local_88") (, ",") (pointer_expression "&local_6c" (& "&") (identifier "local_6c")) (, ",") (pointer_expression "&local_64" (& "&") (identifier "local_64")) () ")"))) (; ";")) (} "}")))) (if_statement "if (pbVar14 + 4 < pbVar1) {\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }\n    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;" (if "if") (parenthesized_expression "(pbVar14 + 4 < pbVar1)" (( "(") (binary_expression "pbVar14 + 4 < pbVar1" (binary_expression "pbVar14 + 4" (identifier "pbVar14") (+ "+") (number_literal "4")) (< "<") (identifier "pbVar1")) () ")")) (compound_statement "{\n      iVar8 = 4;\nLAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);\n      if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }\n    }" ({ "{") (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" (identifier "iVar8") (= "=") (number_literal "4")) (; ";")) (labeled_statement "LAB_00031f4a:\n      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);" (statement_identifier "LAB_00031f4a") (: ":") (expression_statement "iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);" (assignment_expression "iVar8 = (*DAT_00076b4c)(pbVar14,iVar8)" (identifier "iVar8") (= "=") (call_expression "(*DAT_00076b4c)(pbVar14,iVar8)" (parenthesized_expression "(*DAT_00076b4c)" (( "(") (pointer_expression "*DAT_00076b4c" (* "*") (identifier "DAT_00076b4c")) () ")")) (argument_list "(pbVar14,iVar8)" (( "(") (identifier "pbVar14") (, ",") (identifier "iVar8") () ")")))) (; ";"))) (if_statement "if (iVar8 != 0) {\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }" (if "if") (parenthesized_expression "(iVar8 != 0)" (( "(") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }\n      }" ({ "{") (if_statement "if (param_2 == 0) {\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }\n        else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }" (if "if") (parenthesized_expression "(param_2 == 0)" (( "(") (binary_expression "param_2 == 0" (identifier "param_2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }\n        }" ({ "{") (if_statement "if (local_b8 != (undefined4 *)0x0) {\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }" (if "if") (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" (( "(") (binary_expression "local_b8 != (undefined4 *)0x0" (identifier "local_b8") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_00031f85:\n            local_b0 = (byte *)0x0;\n            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;\n            pbVar12 = local_a8;\n            do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);\n            if (param_2 != 0) goto LAB_0003201d;\n          }" ({ "{") (labeled_statement "LAB_00031f85:\n            local_b0 = (byte *)0x0;" (statement_identifier "LAB_00031f85") (: ":") (expression_statement "local_b0 = (byte *)0x0;" (assignment_expression "local_b0 = (byte *)0x0" (identifier "local_b0") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";"))) (expression_statement "pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;" (assignment_expression "pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98" (identifier "pbVar15") (= "=") (binary_expression "pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98" (binary_expression "pbVar5 + (iVar8 + 0x3fffffff) * uVar2" (identifier "pbVar5") (+ "+") (binary_expression "(iVar8 + 0x3fffffff) * uVar2" (parenthesized_expression "(iVar8 + 0x3fffffff)" (( "(") (binary_expression "iVar8 + 0x3fffffff" (identifier "iVar8") (+ "+") (number_literal "0x3fffffff")) () ")")) (* "*") (identifier "uVar2"))) (+ "+") (binary_expression "uVar2 * local_98" (identifier "uVar2") (* "*") (identifier "local_98")))) (; ";")) (expression_statement "pbVar12 = local_a8;" (assignment_expression "pbVar12 = local_a8" (identifier "pbVar12") (= "=") (identifier "local_a8")) (; ";")) (do_statement "do {\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            } while (local_b0 < local_b8);" (do "do") (compound_statement "{\n              local_b0 = (byte *)((int)local_b0 + 1);\n              if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }\n              if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }\nLAB_00032001:\n              pbVar12 = pbVar12 + 4;\n              pbVar15 = pbVar15 + 4;\n            }" ({ "{") (expression_statement "local_b0 = (byte *)((int)local_b0 + 1);" (assignment_expression "local_b0 = (byte *)((int)local_b0 + 1)" (identifier "local_b0") (= "=") (cast_expression "(byte *)((int)local_b0 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b0 + 1)" (( "(") (binary_expression "(int)local_b0 + 1" (cast_expression "(int)local_b0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b0")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (if_statement "if (pbVar15 + 4 < pbVar1) {\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }\n              else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }" (if "if") (parenthesized_expression "(pbVar15 + 4 < pbVar1)" (( "(") (binary_expression "pbVar15 + 4 < pbVar1" (binary_expression "pbVar15 + 4" (identifier "pbVar15") (+ "+") (number_literal "4")) (< "<") (identifier "pbVar1")) () ")")) (compound_statement "{\n                iVar10 = 4;\nLAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);\n              }" ({ "{") (expression_statement "iVar10 = 4;" (assignment_expression "iVar10 = 4" (identifier "iVar10") (= "=") (number_literal "4")) (; ";")) (labeled_statement "LAB_00032035:\n                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);" (statement_identifier "LAB_00032035") (: ":") (expression_statement "uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);" (assignment_expression "uVar9 = (*DAT_00076b4c)(pbVar15,iVar10)" (identifier "uVar9") (= "=") (call_expression "(*DAT_00076b4c)(pbVar15,iVar10)" (parenthesized_expression "(*DAT_00076b4c)" (( "(") (pointer_expression "*DAT_00076b4c" (* "*") (identifier "DAT_00076b4c")) () ")")) (argument_list "(pbVar15,iVar10)" (( "(") (identifier "pbVar15") (, ",") (identifier "iVar10") () ")")))) (; ";"))) (} "}")) (else_clause "else {\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }" (else "else") (compound_statement "{\n                uVar9 = 0;\n                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;\n              }" ({ "{") (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" (identifier "uVar9") (= "=") (number_literal "0")) (; ";")) (if_statement "if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))\n                goto LAB_00032035;" (if "if") (parenthesized_expression "((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))" (( "(") (binary_expression "(pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8)" (parenthesized_expression "(pbVar15 < pbVar1)" (( "(") (binary_expression "pbVar15 < pbVar1" (identifier "pbVar15") (< "<") (identifier "pbVar1")) () ")")) (&& "&&") (parenthesized_expression "(iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8)" (( "(") (comma_expression "iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8" (assignment_expression "iVar10 = (int)pbVar1 - (int)pbVar15" (identifier "iVar10") (= "=") (binary_expression "(int)pbVar1 - (int)pbVar15" (cast_expression "(int)pbVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar1")) (- "-") (cast_expression "(int)pbVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar15")))) (, ",") (binary_expression "iVar10 - 1U < 8" (binary_expression "iVar10 - 1U" (identifier "iVar10") (- "-") (number_literal "1U")) (< "<") (number_literal "8"))) () ")"))) () ")")) (goto_statement "goto LAB_00032035;" (goto "goto") (statement_identifier "LAB_00032035") (; ";"))) (} "}")))) (if_statement "if (param_2 == 0) {\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }\n              else {\n                printf(" %8d",uVar9);\n              }" (if "if") (parenthesized_expression "(param_2 == 0)" (( "(") (binary_expression "param_2 == 0" (identifier "param_2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }\n                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;\n              }" ({ "{") (if_statement "if (pbVar12 + 4 < pbVar1) {\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }\n                else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }" (if "if") (parenthesized_expression "(pbVar12 + 4 < pbVar1)" (( "(") (binary_expression "pbVar12 + 4 < pbVar1" (binary_expression "pbVar12 + 4" (identifier "pbVar12") (+ "+") (number_literal "4")) (< "<") (identifier "pbVar1")) () ")")) (compound_statement "{\n                  iVar10 = 4;\nLAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);\n                  if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }\n                }" ({ "{") (expression_statement "iVar10 = 4;" (assignment_expression "iVar10 = 4" (identifier "iVar10") (= "=") (number_literal "4")) (; ";")) (labeled_statement "LAB_00032055:\n                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);" (statement_identifier "LAB_00032055") (: ":") (expression_statement "uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);" (assignment_expression "uVar6 = (*DAT_00076b4c)(pbVar12,iVar10)" (identifier "uVar6") (= "=") (call_expression "(*DAT_00076b4c)(pbVar12,iVar10)" (parenthesized_expression "(*DAT_00076b4c)" (( "(") (pointer_expression "*DAT_00076b4c" (* "*") (identifier "DAT_00076b4c")) () ")")) (argument_list "(pbVar12,iVar10)" (( "(") (identifier "pbVar12") (, ",") (identifier "iVar10") () ")")))) (; ";"))) (if_statement "if (7 < uVar6) {\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }" (if "if") (parenthesized_expression "(7 < uVar6)" (( "(") (binary_expression "7 < uVar6" (number_literal "7") (< "<") (identifier "uVar6")) () ")")) (compound_statement "{\n                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);\n                    warn(uVar9,uVar6);\n                    goto LAB_00032001;\n                  }" ({ "{") (expression_statement "uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);" (assignment_expression "uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5)" (identifier "uVar9") (= "=") (call_expression "dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5)" (identifier "dcgettext") (argument_list "(0,"Overlarge Dwarf section index detected: %u\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Overlarge Dwarf section index detected: %u\n"" (" """) (string_content "Overlarge Dwarf section index detected: %u") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar9,uVar6);" (call_expression "warn(uVar9,uVar6)" (identifier "warn") (argument_list "(uVar9,uVar6)" (( "(") (identifier "uVar9") (, ",") (identifier "uVar6") () ")"))) (; ";")) (goto_statement "goto LAB_00032001;" (goto "goto") (statement_identifier "LAB_00032001") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }" (else "else") (compound_statement "{\n                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;\n                  uVar6 = 0;\n                }" ({ "{") (if_statement "if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))\n                  goto LAB_00032055;" (if "if") (parenthesized_expression "((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))" (( "(") (binary_expression "(pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8)" (parenthesized_expression "(pbVar12 < pbVar1)" (( "(") (binary_expression "pbVar12 < pbVar1" (identifier "pbVar12") (< "<") (identifier "pbVar1")) () ")")) (&& "&&") (parenthesized_expression "(iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8)" (( "(") (comma_expression "iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8" (assignment_expression "iVar10 = (int)pbVar1 - (int)pbVar12" (identifier "iVar10") (= "=") (binary_expression "(int)pbVar1 - (int)pbVar12" (cast_expression "(int)pbVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar1")) (- "-") (cast_expression "(int)pbVar12" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar12")))) (, ",") (binary_expression "iVar10 - 1U < 8" (binary_expression "iVar10 - 1U" (identifier "iVar10") (- "-") (number_literal "1U")) (< "<") (number_literal "8"))) () ")"))) () ")")) (goto_statement "goto LAB_00032055;" (goto "goto") (statement_identifier "LAB_00032055") (; ";"))) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" (identifier "uVar6") (= "=") (number_literal "0")) (; ";")) (} "}")))) (expression_statement "local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;" (assignment_expression "local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9" (subscript_expression "local_78[iVar8 * 0x1a + (uVar6 - 8)]" (identifier "local_78") ([ "[") (binary_expression "iVar8 * 0x1a + (uVar6 - 8)" (binary_expression "iVar8 * 0x1a" (identifier "iVar8") (* "*") (number_literal "0x1a")) (+ "+") (parenthesized_expression "(uVar6 - 8)" (( "(") (binary_expression "uVar6 - 8" (identifier "uVar6") (- "-") (number_literal "8")) () ")"))) (] "]")) (= "=") (identifier "uVar9")) (; ";")) (} "}")) (else_clause "else {\n                printf(" %8d",uVar9);\n              }" (else "else") (compound_statement "{\n                printf(" %8d",uVar9);\n              }" ({ "{") (expression_statement "printf(" %8d",uVar9);" (call_expression "printf(" %8d",uVar9)" (identifier "printf") (argument_list "(" %8d",uVar9)" (( "(") (string_literal "" %8d"" (" """) (string_content " %8d") (" """)) (, ",") (identifier "uVar9") () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_00032001:\n              pbVar12 = pbVar12 + 4;" (statement_identifier "LAB_00032001") (: ":") (expression_statement "pbVar12 = pbVar12 + 4;" (assignment_expression "pbVar12 = pbVar12 + 4" (identifier "pbVar12") (= "=") (binary_expression "pbVar12 + 4" (identifier "pbVar12") (+ "+") (number_literal "4"))) (; ";"))) (expression_statement "pbVar15 = pbVar15 + 4;" (assignment_expression "pbVar15 = pbVar15 + 4" (identifier "pbVar15") (= "=") (binary_expression "pbVar15 + 4" (identifier "pbVar15") (+ "+") (number_literal "4"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_b0 < local_b8)" (( "(") (binary_expression "local_b0 < local_b8" (identifier "local_b0") (< "<") (identifier "local_b8")) () ")")) (; ";")) (if_statement "if (param_2 != 0) goto LAB_0003201d;" (if "if") (parenthesized_expression "(param_2 != 0)" (( "(") (binary_expression "param_2 != 0" (identifier "param_2") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0003201d;" (goto "goto") (statement_identifier "LAB_0003201d") (; ";"))) (} "}"))) (} "}")) (else_clause "else {\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }" (else "else") (compound_statement "{\n          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);\n          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);\n          printf(pcVar7,local_b4,uVar9);\n          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;\nLAB_0003201d:\n          putchar(10);\n        }" ({ "{") (expression_statement "uVar9 = FUN_0001eb80(local_64,local_60,local_5c);" (assignment_expression "uVar9 = FUN_0001eb80(local_64,local_60,local_5c)" (identifier "uVar9") (= "=") (call_expression "FUN_0001eb80(local_64,local_60,local_5c)" (identifier "FUN_0001eb80") (argument_list "(local_64,local_60,local_5c)" (( "(") (identifier "local_64") (, ",") (identifier "local_60") (, ",") (identifier "local_5c") () ")")))) (; ";")) (expression_statement "pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5)" (identifier "pcVar7") (= "=") (cast_expression "(char *)dcgettext(0,"  [%3d] 0x%s",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  [%3d] 0x%s",5)" (identifier "dcgettext") (argument_list "(0,"  [%3d] 0x%s",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  [%3d] 0x%s"" (" """) (string_content "  [%3d] 0x%s") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar7,local_b4,uVar9);" (call_expression "printf(pcVar7,local_b4,uVar9)" (identifier "printf") (argument_list "(pcVar7,local_b4,uVar9)" (( "(") (identifier "pcVar7") (, ",") (identifier "local_b4") (, ",") (identifier "uVar9") () ")"))) (; ";")) (if_statement "if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;" (if "if") (parenthesized_expression "(local_b8 != (undefined4 *)0x0)" (( "(") (binary_expression "local_b8 != (undefined4 *)0x0" (identifier "local_b8") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00031f85;" (goto "goto") (statement_identifier "LAB_00031f85") (; ";"))) (labeled_statement "LAB_0003201d:\n          putchar(10);" (statement_identifier "LAB_0003201d") (: ":") (expression_statement "putchar(10);" (call_expression "putchar(10)" (identifier "putchar") (argument_list "(10)" (( "(") (number_literal "10") () ")"))) (; ";"))) (} "}")))) (} "}"))) (} "}")) (else_clause "else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;" (else "else") (if_statement "if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))\n    goto LAB_00031f4a;" (if "if") (parenthesized_expression "((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))" (( "(") (binary_expression "(pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (parenthesized_expression "(pbVar14 < pbVar1)" (( "(") (binary_expression "pbVar14 < pbVar1" (identifier "pbVar14") (< "<") (identifier "pbVar1")) () ")")) (&& "&&") (parenthesized_expression "(iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8)" (( "(") (comma_expression "iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8" (assignment_expression "iVar8 = (int)pbVar1 - (int)pbVar14" (identifier "iVar8") (= "=") (binary_expression "(int)pbVar1 - (int)pbVar14" (cast_expression "(int)pbVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar1")) (- "-") (cast_expression "(int)pbVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar14")))) (, ",") (binary_expression "iVar8 - 1U < 8" (binary_expression "iVar8 - 1U" (identifier "iVar8") (- "-") (number_literal "1U")) (< "<") (number_literal "8"))) () ")"))) () ")")) (goto_statement "goto LAB_00031f4a;" (goto "goto") (statement_identifier "LAB_00031f4a") (; ";"))))) (expression_statement "local_b4 = (undefined4 *)((int)local_b4 + 1);" (assignment_expression "local_b4 = (undefined4 *)((int)local_b4 + 1)" (identifier "local_b4") (= "=") (cast_expression "(undefined4 *)((int)local_b4 + 1)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b4 + 1)" (( "(") (binary_expression "(int)local_b4 + 1" (cast_expression "(int)local_b4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b4")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "local_88 = local_88 + 8;" (assignment_expression "local_88 = local_88 + 8" (identifier "local_88") (= "=") (binary_expression "local_88 + 8" (identifier "local_88") (+ "+") (number_literal "8"))) (; ";")) (expression_statement "pbVar14 = pbVar14 + 4;" (assignment_expression "pbVar14 = pbVar14 + 4" (identifier "pbVar14") (= "=") (binary_expression "pbVar14 + 4" (identifier "pbVar14") (+ "+") (number_literal "4"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_b4 < local_bc)" (( "(") (binary_expression "local_b4 < local_bc" (identifier "local_b4") (< "<") (identifier "local_bc")) () ")")) (; ";")) (labeled_statement "LAB_000316a3:\n  if (param_2 == 0) {\n    return 1;\n  }" (statement_identifier "LAB_000316a3") (: ":") (if_statement "if (param_2 == 0) {\n    return 1;\n  }" (if "if") (parenthesized_expression "(param_2 == 0)" (( "(") (binary_expression "param_2 == 0" (identifier "param_2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    return 1;\n  }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}")))) (labeled_statement "LAB_000316b0:\n  putchar(10);" (statement_identifier "LAB_000316b0") (: ":") (expression_statement "putchar(10);" (call_expression "putchar(10)" (identifier "putchar") (argument_list "(10)" (( "(") (number_literal "10") () ")"))) (; ";"))) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

int __regparm3 function_1(type_1 *section,int var_7)

{
  type_1 *var_5;
  type_2 *peVar2;
  type_3 *puVar3;
  type_3 var_12;
  type_4 *p_Var5;
  type_5 *pcVar6;
  type_5 *var_3;
  char *pcVar8;
  type_6 uVar9;
  char *pcVar10;
  type_1 *var_24;
  type_1 *extraout_ECX;
  type_1 *var_6;
  type_1 *extraout_ECX_00;
  type_1 *var_1;
  int var_2;
  type_2 eVar25;
  type_2 eVar26;
  type_2 eVar27;
  char **extraout_ECX_01;
  char **var_4;
  int var_16;
  size_t *psVar16;
  type_3 var_38;
  type_7 auVar18 [4];
  char **var_36;
  type_8 *var_32;
  bool var_34;
  bool var_33;
  type_8 bVar23;
  type_2 *low;
  type_7 *in_stack_ffffff30;
  type_7 *var_23;
  type_5 *var_15;
  type_7 var_13 [4];
  type_7 local_b4 [4];
  type_7 var_25 [4];
  type_9 local_ac;
  type_5 *var_39;
  type_2 local_98;
  type_5 *local_8c;
  type_1 *local_88;
  type_5 *var_37;
  type_10 signature_high;
  type_10 signature_low;
  char buf [64];
  
  bVar23 = 0;
  var_1 = (type_1 *)section->start;
  var_3 = *(type_5 **)&section->size;
  var_2 = *(int *)((int)&section->size + 4);
  if (var_1 == (type_1 *)0x0) {
    var_1 = (type_1 *)section->name;
    pcVar8 = "Section %s is empty\n";
  }
  else {
    if (var_2 != 0 || (type_3)-var_2 < (type_3)((type_5 *)0x17 < var_3)) {
      var_25 = (type_7  [4])&var_1->name;
      var_5 = (type_1 *)((int)var_3->section_offsets + (int)&var_1[-1].num_relocs);
      var_4 = &var_1->compressed_name;
      if (var_4 < var_5) {
        pcVar6 = (type_5 *)0x4;
      }
      else if ((var_5 <= var_1) ||
              (pcVar6 = var_3,
              (type_7 *)0x7 < (type_7 *)((int)var_3[-1].section_sizes + 0x1fU))) {
        local_ac._0_4_ = 0;
        var_13 = (type_7  [4])0x0;
        goto LAB_000313d0;
      }
      var_15 = (type_5 *)&byte_get;
      local_ac._0_4_ = (*byte_get)((type_11 *)var_1,(int)pcVar6);
      if ((type_3)(type_2)local_ac < 2) {
        var_13 = (type_7  [4])0x0;
        goto LAB_000313d0;
      }
      if ((type_3)var_25 < var_5) {
        psVar16 = (size_t *)0x4;
        goto LAB_0003153d;
      }
      if ((var_4 < var_5) &&
         ((type_7 *)((int)var_3[-1].section_sizes + 0x1bU) < (type_7 *)0x8))
      goto LAB_000323ac;
      var_6 = (type_1 *)&var_1->filename;
      var_13 = (type_7  [4])0x0;
      var_23 = in_stack_ffffff30;
      if (var_6 < var_5) goto LAB_000313e1;
LAB_00031338:
      var_23 = in_stack_ffffff30;
      var_25 = (type_7  [4])&var_1->start;
      if ((type_3)var_25 < var_5) {
        local_98._0_4_ = 0;
        psVar16 = (size_t *)0x4;
        goto LAB_0003148f;
      }
      local_98._0_4_ = 0;
      var_24 = var_6;
LAB_0003134f:
      if (var_1 <= (type_3)var_25) {
        local_88 = (type_1 *)var_25;
        local_ac._4_4_ = (type_1 *)var_25;
        var_15 = (type_5 *)0x0;
        do {
          if (var_7 != 0) {
            var_23 = (type_7 *)0x3159f;
            var_8((type_1 *)section->name,(bfd_boolean)&section->filename,var_24);
            pcVar8 = (char *)var_9(0,"  Version:                 %d\n",5);
            var_10(pcVar8,(type_6)(type_2)local_ac);
            if (1 < (type_3)(type_2)local_ac) {
              pcVar8 = (char *)var_9(0,"  Number of columns:       %d\n",5);
              var_10(pcVar8,var_13);
            }
            pcVar8 = (char *)var_9(0,"  Number of used entries:  %d\n",5);
            var_10(pcVar8,(type_6)(type_2)local_98);
            var_3 = (type_5 *)0x0;
            pcVar8 = (char *)var_9(0,"  Number of slots:         %d\n\n",5);
            var_10(pcVar8,var_15);
            var_24 = extraout_ECX_00;
          }
          if (var_5 < local_ac._4_4_) {
            var_1 = (type_1 *)section->name;
            pcVar8 = (char *)var_9(0,"Section %s too small for %d hash table entries\n",5);
            goto LAB_000314f3;
          }
          if ((type_2)local_ac != 1) {
            if ((type_2)local_ac != 2) {
              if (var_7 == 0) {
                return 1;
              }
              pcVar8 = (char *)var_9(0,"  Unsupported version (%d)\n",5);
              var_10(pcVar8,(type_6)(type_2)local_ac);
              goto LAB_000316b0;
            }
            var_12 = (int)var_13 * 4;
            var_4 = &(local_ac._4_4_)->uncompressed_name + (int)var_13;
            if (!var_11((type_3)local_ac._4_4_,var_12)) {
              var_38 = var_12 + 3;
              if (-1 < (int)var_12) {
                var_38 = var_12;
              }
              if ((type_7  [4])((int)var_38 >> 2) == var_13) {
                var_1 = (type_1 *)section->name;
                var_6 = (type_1 *)((int)var_4 + var_12 * (int)(type_2)local_98 * 2);
                var_34 = var_5 < var_6;
                var_33 = var_5 == var_6;
                if (!var_34) {
                  var_2 = 0x10;
                  var_32 = (type_8 *)".debug_tu_index";
                  goto code_r0x00031991;
                }
                pcVar8 = "Section %s too small for offset and size tables\n";
                goto LAB_0003156a;
              }
            }
            pcVar8 = (char *)var_9(0,"Overlarge number of columns: %x\n",5);
            var_14(pcVar8,var_13);
            return 0;
          }
          if (var_7 != 0) {
            if (var_15 == (type_5 *)0x0) goto LAB_000316b0;
LAB_00031644:
            var_13 = (type_7  [4])0x0;
            goto LAB_0003165a;
          }
          var_16 = (int)var_5 - (int)local_ac._4_4_;
          var_2 = var_16 + 3;
          if (-1 < var_16) {
            var_2 = var_16;
          }
          var_19 = var_2 >> 2;
          if (var_17 == (type_3 *)0x0) {
            var_20 = 0;
            var_17 = (type_3 *)var_18(var_19,4);
LAB_00031d8a:
            if (var_15 == (type_5 *)0x0) {
              return 1;
            }
            goto LAB_00031644;
          }
          var_19 = var_19 + var_20;
          if (var_19 < (void *)0x3fffffff) {
            var_17 = (type_3 *)var_21(var_17,var_19 * 4);
            goto LAB_00031d8a;
          }
          in_stack_ffffff30 = (type_7 *)0x323ac;
          var_22((void *)var_19,(size_t)var_17,(size_t)var_24);
          var_1 = (type_1 *)0x0;
          var_4 = extraout_ECX_01;
LAB_000323ac:
          psVar16 = var_3[-1].section_sizes + 7;
LAB_0003153d:
          var_13 = (type_7  [4])
                     (**(type_4 **)&var_15->signature)
                               ((type_11 *)var_4,(int)psVar16);
LAB_000313d0:
          var_6 = (type_1 *)&var_1->filename;
          var_23 = in_stack_ffffff30;
          if (var_6 < var_5) {
LAB_000313e1:
            local_98._0_4_ = (*byte_get)((type_11 *)var_25,4);
            var_25 = (type_7  [4])&var_1->start;
            if ((type_3)var_25 < var_5) {
              psVar16 = (size_t *)0x4;
            }
            else {
              var_24 = var_6;
              if ((type_7 *)0x7 < (type_7 *)((int)var_3[-1].section_sizes + 0x13U))
              goto LAB_0003134f;
              psVar16 = var_3[-1].section_sizes + 5;
            }
          }
          else {
            if ((var_5 <= (type_3)var_25) ||
               (var_23 = (type_7 *)((int)var_3[-1].section_sizes + 0x17),
               (type_7 *)0x7 < var_23)) goto LAB_00031338;
            var_3 = (type_5 *)(var_3[-1].section_sizes + 6);
            local_98._0_4_ = (*byte_get)((type_11 *)var_25,(int)var_3);
            var_25 = (type_7  [4])&var_1->start;
            var_24 = extraout_ECX;
            if (var_5 <= (type_3)var_25) goto LAB_0003134f;
            psVar16 = (size_t *)0x4;
          }
LAB_0003148f:
          var_3 = (type_5 *)(*byte_get)((type_11 *)var_6,(int)psVar16);
          var_6 = (type_1 *)((type_11 **)var_25 + (int)var_3 * 2);
          var_24 = (type_1 *)(&var_6->uncompressed_name + (int)var_3);
          var_15 = var_3;
          if (((var_6 < (type_3)var_25) || (var_24 < var_1)) ||
             (((type_7  [4])var_6 == var_25 && (var_3 != (type_5 *)0x0))))
          goto LAB_000314c9;
          local_88 = (type_1 *)var_25;
          var_25 = (type_7  [4])var_6;
          local_ac._4_4_ = var_24;
        } while( true );
      }
      var_15 = (type_5 *)0x0;
LAB_000314c9:
      var_1 = (type_1 *)section->name;
      pcVar8 = (char *)var_26(0,"Section %s is too small for %d slot\n",
                                  "Section %s is too small for %d slots\n",var_15,5);
      goto LAB_000314f3;
    }
    var_1 = (type_1 *)section->name;
    pcVar8 = "Section %s is too small to contain a CU/TU header\n";
  }
LAB_0003156a:
  var_15 = (type_5 *)0x5;
  pcVar8 = (char *)var_9(0,pcVar8,5);
LAB_000314f3:
  var_14(pcVar8,var_1,var_15);
  return 0;
LAB_0003165a:
  if (var_5 < &local_88->name) {
    signature_high._0_4_ = (char *)0x0;
    signature_high._4_4_ = 0;
    signature_low._0_4_ = 0;
    signature_low._4_4_ = 0;
    goto LAB_0003168c;
  }
  low = &signature_low;
  var_27((type_11 *)local_88,&signature_high,low);
  if ((signature_high._4_4_ != 0 || (char *)signature_high != (char *)0x0) ||
     (signature_low._4_4_ != 0 || (int)signature_low != 0)) {
    var_2 = 4;
    if ((&((type_1 *)var_25)->compressed_name < var_5) ||
       ((var_1 = local_ac._4_4_, (type_3)var_25 < var_5 &&
        (var_2 = (int)var_5 - (int)var_25, var_2 - 1U < 8)))) {
      eVar25._0_4_ = (*byte_get)((type_11 *)var_25,var_2);
      var_1 = (type_1 *)(&(local_ac._4_4_)->uncompressed_name + (int)(type_2)eVar25);
      if ((type_1 *)(&(local_ac._4_4_)->uncompressed_name + (int)(type_2)eVar25) <
          local_ac._4_4_) {
        pcVar8 = (char *)var_9(0,"Section index pool located before start of section\n",5);
        var_14(pcVar8);
        return 0;
      }
    }
    if (var_7 != 0) {
      low = (type_2 *)
            var_28(var_29(signature_low._4_4_,(int)signature_low),var_29(var_23,buf),
                           (char *)signature_high,signature_high._4_4_);
      pcVar8 = (char *)var_9(0,"  [%3d] Signature:  0x%s  Sections: ",5);
      var_10(pcVar8,var_13,low);
    }
    if (var_1 < var_5) {
      do {
        var_4 = &var_1->compressed_name;
        if (var_4 < var_5) {
          var_2 = 4;
        }
        else {
          var_2 = (int)var_5 - (int)var_1;
          if (7 < var_2 - 1U) goto LAB_000317d8;
        }
        eVar25._0_4_ = (*byte_get)((type_11 *)var_1,var_2);
        if ((type_2)eVar25 == 0) goto LAB_000317d8;
        if (var_7 == 0) {
          if (var_20 < var_19) {
            peVar2 = (type_2 *)(var_17 + var_20);
            var_20 = var_20 + 1;
                    /* WARNING: Store size is inaccurate */
            *peVar2 = (type_2)eVar25;
          }
          else {
            low = (type_2 *)0x5;
            pcVar8 = (char *)var_9(0,"Internal error: out of space in the shndx pool.\n");
            var_30(pcVar8);
          }
        }
        else {
          var_10(" %d",(type_6)(type_2)eVar25,low);
        }
        var_1 = (type_1 *)var_4;
        if (var_5 <= var_4) break;
      } while( true );
    }
    var_1 = (type_1 *)section->name;
    pcVar8 = "Section %s too small for shndx pool\n";
    goto LAB_0003156a;
  }
LAB_0003168c:
  var_13 = (type_7  [4])((int)(uint64_t *)var_13 + 1);
  local_88 = (type_1 *)&local_88->name;
  var_25 = (type_7  [4])&((type_1 *)var_25)->compressed_name;
  if (var_15 <= (type_3)var_13) goto LAB_000316a3;
  goto LAB_0003165a;
LAB_000317d8:
  if (var_7 == 0) {
    if (var_20 < var_19) {
      puVar3 = var_17 + var_20;
      var_20 = var_20 + 1;
      *puVar3 = 0;
    }
    else {
      pcVar8 = (char *)var_9(0,"Internal error: out of space in the shndx pool.\n",5);
      var_30(pcVar8);
    }
  }
  else {
    var_31(10);
  }
  goto LAB_0003168c;
  while( true ) {
    var_2 = var_2 + -1;
    var_34 = *(type_8 *)&var_1->uncompressed_name < *var_32;
    var_33 = *(type_8 *)&var_1->uncompressed_name == *var_32;
    var_1 = (type_1 *)((int)var_1 + (type_3)bVar23 * -2 + 1);
    var_32 = var_32 + (type_3)bVar23 * -2 + 1;
    if (!var_33) break;
code_r0x00031991:
    if (var_2 == 0) break;
  }
  var_33 = !var_34 && !var_33;
  if (var_7 == 0) {
    if (var_33 == var_34) {
      tu_count = (int)(type_2)local_98;
      var_37 = (type_5 *)var_35((size_t)(type_2)local_98,0x68);
      tu_sets = var_37;
    }
    else {
      cu_count = (int)(type_2)local_98;
      var_37 = (type_5 *)var_35((size_t)(type_2)local_98,0x68);
      cu_sets = var_37;
    }
    if (var_15 != (type_5 *)0x0) {
LAB_000319e5:
      var_39 = (type_5 *)0x0;
      var_1 = local_88;
      auVar18 = var_25;
      do {
        var_36 = &var_1->name;
        if (var_5 < var_36) {
          signature_high._0_4_ = (char *)0x0;
          signature_high._4_4_ = 0;
          signature_low._0_4_ = 0;
          signature_low._4_4_ = 0;
        }
        else {
          var_27((type_11 *)var_1,&signature_high,&signature_low);
        }
        if (&((type_1 *)auVar18)->compressed_name < var_5) {
          var_2 = 4;
LAB_00031a7a:
          eVar25._0_4_ = (*byte_get)((type_11 *)auVar18,var_2);
          if ((type_2)eVar25 != 0) {
            if ((type_3)(type_2)local_98 < (type_3)(type_2)eVar25) {
              pcVar8 = (char *)var_9(0,
                                         "Row index (%u) is larger than number of used entries (%u)\n"
                                         ,5);
              var_13 = (type_7  [4])(type_2)local_98;
              goto LAB_00031dd2;
            }
            if (var_7 == 0) {
              if (var_5 <= var_36) {
                pcVar8 = "Signature (%p) extends beyond end of space in section\n";
                goto LAB_0003156a;
              }
              p_Var5 = (type_4 *)var_1->compressed_name;
              local_8c = var_37 + ((int)(type_2)eVar25 - 1);
              *(char **)&local_8c->signature = var_1->uncompressed_name;
              *(type_4 **)((int)&local_8c->signature + 4) = p_Var5;
              var_38 = ((int)(type_2)eVar25 + 0x3fffffff) * var_12;
              var_1 = (type_1 *)((int)var_4 + var_38);
              if ((var_11(var_38,(type_3)var_4)) || (var_5 < var_1)) goto LAB_00031db8;
              if (var_13 != (type_7  [4])0x0) goto LAB_00031af3;
            }
            else {
              var_38 = ((int)(type_2)eVar25 + 0x3fffffff) * var_12;
              var_1 = (type_1 *)((int)var_4 + var_38);
              if ((var_11(var_38,(type_3)var_4)) || (var_5 < var_1)) {
LAB_00031db8:
                pcVar8 = (char *)var_9(0,
                                           "Row index (%u) * num columns (%u) > space remaining in section\n"
                                           ,5);
LAB_00031dd2:
                var_14(pcVar8,(type_6)(type_2)eVar25,var_13);
                return 0;
              }
              pcVar8 = var_28(var_29(signature_low._4_4_,(int)signature_low),
                                      var_29(var_23,buf),(char *)signature_high,
                                      signature_high._4_4_);
              pcVar10 = (char *)var_9(0,"  [%3d] 0x%s",5);
              var_10(pcVar10,var_39,pcVar8);
              if (var_13 != (type_7  [4])0x0) {
                local_8c = var_37 + ((int)(type_2)eVar25 - 1);
LAB_00031af3:
                local_b4 = (type_7  [4])0x0;
                var_6 = local_ac._4_4_;
                do {
                  local_b4 = (type_7  [4])((int)local_b4 + 1);
                  if (&var_1->compressed_name < var_5) {
                    var_2 = 4;
LAB_00031bd5:
                    eVar25._0_4_ = (*byte_get)((type_11 *)var_1,var_2);
                    if (var_7 == 0) goto LAB_00031b3e;
LAB_00031bf1:
                    var_10(" %8d",(type_6)(type_2)eVar25);
                  }
                  else {
                    eVar25._0_4_ = 0;
                    if ((var_1 < var_5) && (var_2 = (int)var_5 - (int)var_1, var_2 - 1U < 8)
                       ) goto LAB_00031bd5;
                    if (var_7 != 0) goto LAB_00031bf1;
LAB_00031b3e:
                    if (&var_6->compressed_name < var_5) {
                      var_2 = 4;
LAB_00031c15:
                      eVar26._0_4_ = (*byte_get)((type_11 *)var_6,var_2);
                      if (7 < (type_3)(type_2)eVar26) {
                        pcVar8 = (char *)var_9(0,"Overlarge Dwarf section index detected: %u\n",
                                                   5);
                        var_14(pcVar8,(type_6)(type_2)eVar26);
                        goto LAB_00031b71;
                      }
                    }
                    else {
                      if ((var_6 < var_5) &&
                         (var_2 = (int)var_5 - (int)var_6, var_2 - 1U < 8)) goto LAB_00031c15;
                      eVar26._0_4_ = 0;
                    }
                    /* WARNING: Store size is inaccurate */
                    local_8c->section_offsets[(int)(type_2)eVar26] = (type_2)eVar25;
                    *(type_6 *)((int)local_8c->section_offsets + (int)(type_2)eVar26 * 8 + 4) =
                         0;
                  }
LAB_00031b71:
                  var_6 = (type_1 *)&var_6->compressed_name;
                  var_1 = (type_1 *)&var_1->compressed_name;
                } while ((type_3)local_b4 < (type_3)var_13);
                if (var_7 == 0) goto LAB_00031a20;
              }
              var_31(10);
            }
          }
        }
        else if (((type_3)auVar18 < var_5) && (var_2 = (int)var_5 - (int)auVar18, var_2 - 1U < 8))
        goto LAB_00031a7a;
LAB_00031a20:
        var_39 = (type_5 *)((int)&var_39->signature + 1);
        var_1 = (type_1 *)var_36;
        auVar18 = (type_7  [4])&((type_1 *)auVar18)->compressed_name;
      } while (var_39 < var_15);
      if (var_7 != 0) goto LAB_00032214;
    }
    if (var_13 != (type_7  [4])0x0) {
LAB_00031e1e:
      eVar25._0_4_ = 0;
      var_1 = local_ac._4_4_;
      do {
        eVar25._0_4_ = (type_2)((int)(type_2)eVar25 + 1);
        if (&var_1->compressed_name < var_5) {
          var_2 = 4;
LAB_00031e67:
          local_b4 = (type_7  [4])(*byte_get)((type_11 *)var_1,var_2);
        }
        else {
          local_b4 = (type_7  [4])0x0;
          if ((var_1 < var_5) && (var_2 = (int)var_5 - (int)var_1, var_2 - 1U < 8))
          goto LAB_00031e67;
        }
        if (var_7 != 0) {
          var_23 = (type_7 *)0x31e89;
          pcVar8 = var_40((type_3)local_b4);
          var_10(" %8s",pcVar8);
        }
        var_1 = (type_1 *)&var_1->compressed_name;
      } while ((type_3)(type_2)eVar25 < (type_3)var_13);
      if (var_7 != 0) goto LAB_0003227a;
    }
    if (var_15 == (type_5 *)0x0) {
      return 1;
    }
  }
  else {
    pcVar8 = (char *)var_9(0,"  Offset table\n",5);
    var_10(pcVar8);
    if (var_33 == var_34) {
      uVar9 = var_9(0,"signature",5);
    }
    else {
      uVar9 = var_9(0,"dwo_id",5);
    }
    var_10("  slot  %-16s  ",uVar9);
    var_1 = local_ac._4_4_;
    if (var_13 != (type_7  [4])0x0) {
      do {
        var_36 = &var_1->compressed_name;
        if (var_36 < var_5) {
          var_2 = 4;
LAB_000321db:
          eVar25._0_4_ = (*byte_get)((type_11 *)var_1,var_2);
        }
        else {
          eVar25._0_4_ = 0;
          if ((var_1 < var_5) && (var_2 = (int)var_5 - (int)var_1, var_2 - 1U < 8))
          goto LAB_000321db;
        }
        var_23 = (type_7 *)0x321b7;
        pcVar8 = var_40((type_3)(type_2)eVar25);
        var_10(" %8s",pcVar8);
        var_1 = (type_1 *)var_36;
      } while (var_4 != var_36);
    }
    var_31(10);
    var_37 = (type_5 *)0x0;
    if (var_15 != (type_5 *)0x0) goto LAB_000319e5;
    var_37 = var_15;
LAB_00032214:
    var_31(10);
    pcVar8 = (char *)var_9(0,"  Size table\n",5);
    var_10(pcVar8);
    if (var_33 == var_34) {
      uVar9 = var_9(0,"signature",5);
    }
    else {
      uVar9 = var_9(0,"dwo_id",5);
    }
    var_10("  slot  %-16s  ",uVar9);
    if (var_13 != (type_7  [4])0x0) goto LAB_00031e1e;
LAB_0003227a:
    var_31(10);
    if (var_15 == (type_5 *)0x0) goto LAB_000316b0;
  }
  local_b4 = (type_7  [4])0x0;
  auVar18 = var_25;
  do {
    if (var_5 < &local_88->name) {
      signature_high._0_4_ = (char *)0x0;
      signature_high._4_4_ = 0;
      signature_low._0_4_ = 0;
      signature_low._4_4_ = 0;
    }
    else {
      var_27((type_11 *)local_88,&signature_high,&signature_low);
    }
    if (&((type_1 *)auVar18)->compressed_name < var_5) {
      var_2 = 4;
LAB_00031f4a:
      eVar25._0_4_ = (*byte_get)((type_11 *)auVar18,var_2);
      if ((type_2)eVar25 != 0) {
        if (var_7 == 0) {
          if (var_13 != (type_7  [4])0x0) {
LAB_00031f85:
            var_25 = (type_7  [4])0x0;
            var_1 = (type_1 *)
                      ((int)var_4 +
                      ((int)(type_2)eVar25 + 0x3fffffff) * var_12 + var_12 * (int)(type_2)local_98);
            var_6 = local_ac._4_4_;
            do {
              var_25 = (type_7  [4])((int)var_25 + 1);
              if (&var_1->compressed_name < var_5) {
                var_2 = 4;
LAB_00032035:
                eVar26._0_4_ = (*byte_get)((type_11 *)var_1,var_2);
              }
              else {
                eVar26._0_4_ = 0;
                if ((var_1 < var_5) && (var_2 = (int)var_5 - (int)var_1, var_2 - 1U < 8))
                goto LAB_00032035;
              }
              if (var_7 == 0) {
                if (&var_6->compressed_name < var_5) {
                  var_2 = 4;
LAB_00032055:
                  eVar27._0_4_ = (*byte_get)((type_11 *)var_6,var_2);
                  if (7 < (type_3)(type_2)eVar27) {
                    pcVar8 = (char *)var_9(0,"Overlarge Dwarf section index detected: %u\n",5);
                    var_14(pcVar8,(type_6)(type_2)eVar27);
                    goto LAB_00032001;
                  }
                }
                else {
                  if ((var_6 < var_5) && (var_2 = (int)var_5 - (int)var_6, var_2 - 1U < 8))
                  goto LAB_00032055;
                  eVar27._0_4_ = 0;
                }
                    /* WARNING: Store size is inaccurate */
                *(type_2 *)
                 ((int)var_37[(int)(type_2)eVar25].section_offsets +
                 (int)(type_2)eVar27 * 4 + -0x28) = (type_2)eVar26;
              }
              else {
                var_10(" %8d",(type_6)(type_2)eVar26);
              }
LAB_00032001:
              var_6 = (type_1 *)&var_6->compressed_name;
              var_1 = (type_1 *)&var_1->compressed_name;
            } while ((type_3)var_25 < (type_3)var_13);
            if (var_7 != 0) goto LAB_0003201d;
          }
        }
        else {
          pcVar8 = var_28(var_29(signature_low._4_4_,(int)signature_low),
                                  var_29(var_23,buf),(char *)signature_high,signature_high._4_4_)
          ;
          pcVar10 = (char *)var_9(0,"  [%3d] 0x%s",5);
          var_10(pcVar10,local_b4,pcVar8);
          if (var_13 != (type_7  [4])0x0) goto LAB_00031f85;
LAB_0003201d:
          var_31(10);
        }
      }
    }
    else if (((type_3)auVar18 < var_5) && (var_2 = (int)var_5 - (int)auVar18, var_2 - 1U < 8))
    goto LAB_00031f4a;
    local_b4 = (type_7  [4])((int)(uint64_t *)local_b4 + 1);
    local_88 = (type_1 *)&local_88->name;
    auVar18 = (type_7  [4])&((type_1 *)auVar18)->compressed_name;
  } while ((type_3)local_b4 < var_15);
LAB_000316a3:
  if (var_7 == 0) {
    return 1;
  }
LAB_000316b0:
  var_31(10);
  return 1;
}


(translation_unit (function_definition type: (type_identifier) (ERROR (identifier)) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)))) body: (compound_statement (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) 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: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) 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: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) 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: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) 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: (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: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) 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: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) 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: (string_literal (string_content) (escape_sequence))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) right: (binary_expression left: (binary_expression left: (parenthesized_expression (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)) 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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: (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))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (goto_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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (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: (goto_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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_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))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (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)))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) 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) (escape_sequence)) (number_literal)))))) (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) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (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: (type_identifier) 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: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (return_statement (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)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (goto_statement label: (statement_identifier)))) (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 (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 (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) (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: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) 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: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) 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: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence)))) (goto_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) (identifier)))) (return_statement (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (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: (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) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (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: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (labeled_statement label: (statement_identifier) (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 (return_statement (number_literal))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (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 (identifier) (binary_expression left: (identifier) right: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) arguments: (argument_list (identifier) (identifier))))))) (labeled_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 (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) (number_literal)))))) (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))) alternative: (else_clause (compound_statement (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))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))))) 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: (primitive_type)) value: (identifier)) right: (number_literal))) right: (binary_expression left: (number_literal) right: (identifier)))))) consequence: (goto_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 (identifier) (identifier) (identifier) (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: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (true)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) 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: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (string_literal (string_content) (escape_sequence)) (identifier) (number_literal))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) 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: (string_literal (string_content) (escape_sequence))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))) (return_statement (number_literal)) (labeled_statement label: (statement_identifier) (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: (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: (number_literal))) (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (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 (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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: (binary_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: (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)))) (return_statement (number_literal)))))) (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: (call_expression function: (identifier) arguments: (argument_list (identifier) (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) (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (do_statement 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: (compound_statement (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: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (binary_expression left: (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))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_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)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (break_statement))) condition: (parenthesized_expression (true))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) 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: (string_literal (string_content) (escape_sequence)))) (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) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_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)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_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: (identifier))))) right: (number_literal)))) alternative: (else_clause (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)))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))))))) (goto_statement label: (statement_identifier)) (while_statement condition: (parenthesized_expression (true)) body: (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: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (break_statement)) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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 (identifier) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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 (identifier) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))) (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 (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement 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: (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: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier)))))))) (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)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) 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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence)))) (goto_statement label: (statement_identifier)))) (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: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (call_expression function: (identifier) arguments: (argument_list (identifier) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) consequence: (goto_statement label: (statement_identifier))) (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: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (call_expression function: (identifier) arguments: (argument_list (identifier) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) consequence: (compound_statement (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)))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))) (return_statement (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (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) (identifier) (identifier)))) (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: (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 (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (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)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (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: (primitive_type)) value: (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: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (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)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) 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)))) (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) 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: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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: (primitive_type)) value: (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: (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) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) (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 (labeled_statement label: (statement_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: (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 (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier)))))) 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: (primitive_type)) value: (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: (goto_statement label: (statement_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)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) (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 (return_statement (number_literal))))) alternative: (else_clause (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) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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 (do_statement 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: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier)))))) 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: (primitive_type)) value: (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: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier)))) (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: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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: (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (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: (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: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier)))))))) (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)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (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 (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (identifier))) right: (binary_expression left: (identifier) right: (identifier))))) (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: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (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: (primitive_type)) value: (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: (goto_statement label: (statement_identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (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)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) 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)))) (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier))))))) (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: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (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) (identifier) (identifier)))) (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: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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: (primitive_type)) value: (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: (goto_statement label: (statement_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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (return_statement (number_literal))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal))))) (return_statement (number_literal)))))

/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

undefined4 __regparm3 MASKED(int param_1,int param_2)

{
  byte *pbVar1;
  uint uVar2;
  undefined4 *puVar3;
  undefined4 *puVar4;
  byte *pbVar5;
  uint uVar6;
  char *pcVar7;
  int iVar8;
  undefined4 uVar9;
  byte *extraout_ECX;
  int iVar10;
  byte *pbVar11;
  byte *pbVar12;
  uint uVar13;
  byte *pbVar14;
  byte *pbVar15;
  bool bVar16;
  bool bVar17;
  byte bVar18;
  int *piVar19;
  undefined4 *local_bc;
  undefined4 *local_b8;
  undefined4 *local_b4;
  byte *local_b0;
  uint local_ac;
  byte *local_a8;
  undefined4 *local_a4;
  uint local_98;
  undefined4 *local_8c;
  byte *local_88;
  undefined4 *local_78;
  int local_6c;
  int local_68;
  int local_64;
  int local_60;
  undefined1 local_5c [72];
  undefined4 uStack_14;
  
  bVar18 = 0;
  uStack_14 = 0x31289;
  pbVar14 = *(byte **)(param_1 + 0x10);
  puVar3 = *(undefined4 **)(param_1 + 0x1c);
  if (pbVar14 == (byte *)0x0) {
    pbVar14 = *(byte **)(param_1 + 8);
    pcVar7 = "Section %s is empty\n";
  }
  else {
    if (*(int *)(param_1 + 0x20) != 0 ||
        (uint)-*(int *)(param_1 + 0x20) < (uint)((undefined4 *)0x17 < puVar3)) {
      local_b0 = pbVar14 + 8;
      pbVar1 = pbVar14 + (int)puVar3;
      pbVar5 = pbVar14 + 4;
      if (pbVar5 < pbVar1) {
        puVar4 = (undefined4 *)0x4;
      }
      else if ((pbVar1 <= pbVar14) || (puVar4 = puVar3, 7 < (int)puVar3 - 1U)) {
        local_ac = 0;
        local_b8 = (undefined4 *)0x0;
        goto LAB_000313d0;
      }
      local_bc = &DAT_00076b4c;
      local_ac = (*DAT_00076b4c)(pbVar14,puVar4);
      if (local_ac < 2) {
        local_b8 = (undefined4 *)0x0;
        goto LAB_000313d0;
      }
      if (local_b0 < pbVar1) {
        puVar4 = (undefined4 *)0x4;
        goto LAB_0003153d;
      }
      if ((pbVar5 < pbVar1) && ((int)puVar3 - 5U < 8)) goto LAB_000323ac;
      pbVar5 = pbVar14 + 0xc;
      local_b8 = (undefined4 *)0x0;
      if (pbVar5 < pbVar1) goto LAB_000313e1;
LAB_00031338:
      local_b0 = pbVar14 + 0x10;
      if (local_b0 < pbVar1) {
        local_98 = 0;
        puVar3 = (undefined4 *)0x4;
        goto LAB_0003148f;
      }
      local_98 = 0;
LAB_0003134f:
      if (pbVar14 <= local_b0) {
        local_88 = local_b0;
        local_a8 = local_b0;
        local_bc = (undefined4 *)0x0;
        do {
          if (param_2 != 0) {
            FUN_0001ec20();
            pcVar7 = (char *)dcgettext(0,"  Version:                 %d\n",5);
            printf(pcVar7,local_ac);
            if (1 < local_ac) {
              pcVar7 = (char *)dcgettext(0,"  Number of columns:       %d\n",5);
              printf(pcVar7,local_b8);
            }
            pcVar7 = (char *)dcgettext(0,"  Number of used entries:  %d\n",5);
            printf(pcVar7,local_98);
            puVar3 = (undefined4 *)0x0;
            pcVar7 = (char *)dcgettext(0,"  Number of slots:         %d\n\n",5);
            printf(pcVar7,local_bc);
          }
          if (pbVar1 < local_a8) {
            pbVar14 = *(byte **)(param_1 + 8);
            uVar9 = dcgettext(0,"Section %s too small for %d hash table entries\n",5);
            goto LAB_000314f3;
          }
          if (local_ac != 1) {
            if (local_ac != 2) {
              if (param_2 == 0) {
                return 1;
              }
              pcVar7 = (char *)dcgettext(0,"  Unsupported version (%d)\n",5);
              printf(pcVar7,local_ac);
              goto LAB_000316b0;
            }
            uVar2 = (int)local_b8 * 4;
            pbVar5 = local_a8 + uVar2;
            if (!CARRY4((uint)local_a8,uVar2)) {
              uVar6 = uVar2 + 3;
              if (-1 < (int)uVar2) {
                uVar6 = uVar2;
              }
              if ((undefined4 *)((int)uVar6 >> 2) == local_b8) {
                pbVar14 = *(byte **)(param_1 + 8);
                bVar16 = pbVar1 < pbVar5 + uVar2 * local_98 * 2;
                bVar17 = pbVar1 == pbVar5 + uVar2 * local_98 * 2;
                if (!bVar16) {
                  iVar8 = 0x10;
                  pbVar15 = (byte *)".debug_tu_index";
                  goto code_r0x00031991;
                }
                pcVar7 = "Section %s too small for offset and size tables\n";
                goto LAB_0003156a;
              }
            }
            uVar9 = dcgettext(0,"Overlarge number of columns: %x\n",5);
            warn(uVar9,local_b8);
            return 0;
          }
          if (param_2 != 0) {
            if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;
LAB_00031644:
            local_b8 = (undefined4 *)0x0;
            goto LAB_0003165a;
          }
          iVar10 = (int)pbVar1 - (int)local_a8;
          iVar8 = iVar10 + 3;
          if (-1 < iVar10) {
            iVar8 = iVar10;
          }
          DAT_00076924 = iVar8 >> 2;
          if (DAT_00076928 == 0) {
            DAT_00076920 = 0;
            DAT_00076928 = FUN_0002dba0(DAT_00076924,4);
LAB_00031d8a:
            if (local_bc == (undefined4 *)0x0) {
              return 1;
            }
            goto LAB_00031644;
          }
          DAT_00076924 = DAT_00076924 + DAT_00076920;
          if (DAT_00076924 < 0x3fffffff) {
            DAT_00076928 = xrealloc(DAT_00076928,DAT_00076924 * 4);
            goto LAB_00031d8a;
          }
          FUN_0001e980();
          pbVar14 = (byte *)0x0;
          pbVar5 = extraout_ECX;
LAB_000323ac:
          puVar4 = puVar3 + -1;
LAB_0003153d:
          local_b8 = (undefined4 *)(*(code *)*local_bc)(pbVar5,puVar4);
LAB_000313d0:
          pbVar5 = pbVar14 + 0xc;
          if (pbVar5 < pbVar1) {
LAB_000313e1:
            local_98 = (*DAT_00076b4c)(local_b0,4);
            local_b0 = pbVar14 + 0x10;
            if (local_b0 < pbVar1) {
              puVar3 = (undefined4 *)0x4;
            }
            else {
              if (7 < (int)puVar3 - 0xdU) goto LAB_0003134f;
              puVar3 = puVar3 + -3;
            }
          }
          else {
            if ((pbVar1 <= local_b0) || (uVar2 = (int)puVar3 - 9, 7 < uVar2)) goto LAB_00031338;
            puVar3 = puVar3 + -2;
            local_98 = (*DAT_00076b4c)(local_b0,puVar3,uVar2,uVar2);
            local_b0 = pbVar14 + 0x10;
            if (pbVar1 <= local_b0) goto LAB_0003134f;
            puVar3 = (undefined4 *)0x4;
          }
LAB_0003148f:
          puVar3 = (undefined4 *)(*DAT_00076b4c)(pbVar5,puVar3);
          pbVar5 = local_b0 + (int)puVar3 * 8;
          local_a8 = pbVar5 + (int)puVar3 * 4;
          local_bc = puVar3;
          if (((pbVar5 < local_b0) || (local_a8 < pbVar14)) ||
             ((pbVar5 == local_b0 && (puVar3 != (undefined4 *)0x0)))) goto LAB_000314c9;
          local_88 = local_b0;
          local_b0 = pbVar5;
        } while( true );
      }
      local_bc = (undefined4 *)0x0;
LAB_000314c9:
      pbVar14 = *(byte **)(param_1 + 8);
      uVar9 = dcngettext(0,"Section %s is too small for %d slot\n",
                         "Section %s is too small for %d slots\n",local_bc,5);
      goto LAB_000314f3;
    }
    pbVar14 = *(byte **)(param_1 + 8);
    pcVar7 = "Section %s is too small to contain a CU/TU header\n";
  }
LAB_0003156a:
  local_bc = (undefined4 *)0x5;
  uVar9 = dcgettext(0,pcVar7,5);
LAB_000314f3:
  warn(uVar9,pbVar14,local_bc);
  return 0;
LAB_0003165a:
  if (pbVar1 < local_88 + 8) {
    local_6c = 0;
    local_68 = 0;
    local_64 = 0;
    local_60 = 0;
    goto LAB_0003168c;
  }
  piVar19 = &local_64;
  FUN_000490b0(local_88,&local_6c,piVar19);
  if ((local_68 != 0 || local_6c != 0) || (local_60 != 0 || local_64 != 0)) {
    iVar8 = 4;
    if ((local_b0 + 4 < pbVar1) ||
       ((pbVar14 = local_a8, local_b0 < pbVar1 &&
        (iVar8 = (int)pbVar1 - (int)local_b0, iVar8 - 1U < 8)))) {
      iVar8 = (*DAT_00076b4c)(local_b0,iVar8);
      pbVar14 = local_a8 + iVar8 * 4;
      if (local_a8 + iVar8 * 4 < local_a8) {
        uVar9 = dcgettext(0,"Section index pool located before start of section\n",5);
        warn(uVar9);
        return 0;
      }
    }
    if (param_2 != 0) {
      piVar19 = (int *)FUN_0001eb80(local_64,local_60,local_5c);
      pcVar7 = (char *)dcgettext(0,"  [%3d] Signature:  0x%s  Sections: ",5);
      printf(pcVar7,local_b8,piVar19);
    }
    if (pbVar14 < pbVar1) {
      do {
        pbVar5 = pbVar14 + 4;
        if (pbVar5 < pbVar1) {
          iVar8 = 4;
        }
        else {
          iVar8 = (int)pbVar1 - (int)pbVar14;
          if (7 < iVar8 - 1U) goto LAB_000317d8;
        }
        iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);
        if (iVar8 == 0) goto LAB_000317d8;
        if (param_2 == 0) {
          if (DAT_00076920 < DAT_00076924) {
            iVar10 = DAT_00076920 * 4;
            DAT_00076920 = DAT_00076920 + 1;
            *(int *)(DAT_00076928 + iVar10) = iVar8;
          }
          else {
            piVar19 = (int *)0x5;
            uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n");
            error(uVar9);
          }
        }
        else {
          printf(" %d",iVar8,piVar19);
        }
        pbVar14 = pbVar5;
        if (pbVar1 <= pbVar5) break;
      } while( true );
    }
    pbVar14 = *(byte **)(param_1 + 8);
    pcVar7 = "Section %s too small for shndx pool\n";
    goto LAB_0003156a;
  }
LAB_0003168c:
  local_b8 = (undefined4 *)((int)local_b8 + 1);
  local_88 = local_88 + 8;
  local_b0 = local_b0 + 4;
  if (local_bc <= local_b8) goto LAB_000316a3;
  goto LAB_0003165a;
LAB_000317d8:
  if (param_2 == 0) {
    if (DAT_00076920 < DAT_00076924) {
      iVar8 = DAT_00076920 * 4;
      DAT_00076920 = DAT_00076920 + 1;
      *(undefined4 *)(DAT_00076928 + iVar8) = 0;
    }
    else {
      uVar9 = dcgettext(0,"Internal error: out of space in the shndx pool.\n",5);
      error(uVar9);
    }
  }
  else {
    putchar(10);
  }
  goto LAB_0003168c;
  while( true ) {
    iVar8 = iVar8 + -1;
    bVar16 = *pbVar14 < *pbVar15;
    bVar17 = *pbVar14 == *pbVar15;
    pbVar14 = pbVar14 + (uint)bVar18 * -2 + 1;
    pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;
    if (!bVar17) break;
code_r0x00031991:
    if (iVar8 == 0) break;
  }
  bVar17 = !bVar16 && !bVar17;
  if (param_2 == 0) {
    if (bVar17 == bVar16) {
      DAT_00076910 = local_98;
      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);
      DAT_00076908 = local_78;
    }
    else {
      DAT_00076914 = local_98;
      local_78 = (undefined4 *)FUN_00031220(local_98,0x68);
      DAT_0007690c = local_78;
    }
    if (local_bc != (undefined4 *)0x0) {
LAB_000319e5:
      local_a4 = (undefined4 *)0x0;
      pbVar14 = local_88;
      pbVar15 = local_b0;
      do {
        pbVar12 = pbVar14 + 8;
        if (pbVar1 < pbVar12) {
          local_6c = 0;
          local_68 = 0;
          local_64 = 0;
          local_60 = 0;
        }
        else {
          FUN_000490b0(pbVar14,&local_6c,&local_64);
        }
        if (pbVar15 + 4 < pbVar1) {
          iVar8 = 4;
LAB_00031a7a:
          uVar6 = (*DAT_00076b4c)(pbVar15,iVar8);
          if (uVar6 != 0) {
            if (local_98 < uVar6) {
              uVar9 = dcgettext(0,"Row index (%u) is larger than number of used entries (%u)\n",5);
              local_b8 = (undefined4 *)local_98;
              goto LAB_00031dd2;
            }
            if (param_2 == 0) {
              if (pbVar1 <= pbVar12) {
                pcVar7 = "Signature (%p) extends beyond end of space in section\n";
                goto LAB_0003156a;
              }
              uVar9 = *(undefined4 *)(pbVar14 + 4);
              local_8c = local_78 + uVar6 * 0x1a + -0x1a;
              *local_8c = *(undefined4 *)pbVar14;
              local_8c[1] = uVar9;
              uVar13 = (uVar6 + 0x3fffffff) * uVar2;
              pbVar14 = pbVar5 + uVar13;
              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) goto LAB_00031db8;
              if (local_b8 != (undefined4 *)0x0) goto LAB_00031af3;
            }
            else {
              uVar13 = (uVar6 + 0x3fffffff) * uVar2;
              pbVar14 = pbVar5 + uVar13;
              if ((CARRY4(uVar13,(uint)pbVar5)) || (pbVar1 < pbVar14)) {
LAB_00031db8:
                uVar9 = dcgettext(0,
                                  "Row index (%u) * num columns (%u) > space remaining in section\n"
                                  ,5);
LAB_00031dd2:
                warn(uVar9,uVar6,local_b8);
                return 0;
              }
              uVar9 = FUN_0001eb80(local_64,local_60,local_5c);
              pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);
              printf(pcVar7,local_a4,uVar9);
              if (local_b8 != (undefined4 *)0x0) {
                local_8c = local_78 + uVar6 * 0x1a + -0x1a;
LAB_00031af3:
                local_b4 = (undefined4 *)0x0;
                pbVar11 = local_a8;
                do {
                  local_b4 = (undefined4 *)((int)local_b4 + 1);
                  if (pbVar14 + 4 < pbVar1) {
                    iVar8 = 4;
LAB_00031bd5:
                    uVar9 = (*DAT_00076b4c)(pbVar14,iVar8);
                    if (param_2 == 0) goto LAB_00031b3e;
LAB_00031bf1:
                    printf(" %8d",uVar9);
                  }
                  else {
                    uVar9 = 0;
                    if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))
                    goto LAB_00031bd5;
                    if (param_2 != 0) goto LAB_00031bf1;
LAB_00031b3e:
                    if (pbVar11 + 4 < pbVar1) {
                      iVar8 = 4;
LAB_00031c15:
                      uVar6 = (*DAT_00076b4c)(pbVar11,iVar8);
                      if (7 < uVar6) {
                        uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);
                        warn(uVar9,uVar6);
                        goto LAB_00031b71;
                      }
                    }
                    else {
                      if ((pbVar11 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar11, iVar8 - 1U < 8)
                         ) goto LAB_00031c15;
                      uVar6 = 0;
                    }
                    local_8c[uVar6 * 2 + 2] = uVar9;
                    local_8c[uVar6 * 2 + 3] = 0;
                  }
LAB_00031b71:
                  pbVar11 = pbVar11 + 4;
                  pbVar14 = pbVar14 + 4;
                } while (local_b4 < local_b8);
                if (param_2 == 0) goto LAB_00031a20;
              }
              putchar(10);
            }
          }
        }
        else if ((pbVar15 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar15, iVar8 - 1U < 8))
        goto LAB_00031a7a;
LAB_00031a20:
        local_a4 = (undefined4 *)((int)local_a4 + 1);
        pbVar14 = pbVar12;
        pbVar15 = pbVar15 + 4;
      } while (local_a4 < local_bc);
      if (param_2 != 0) goto LAB_00032214;
    }
    if (local_b8 != (undefined4 *)0x0) {
LAB_00031e1e:
      uVar6 = 0;
      pbVar14 = local_a8;
      do {
        uVar6 = uVar6 + 1;
        if (pbVar14 + 4 < pbVar1) {
          iVar8 = 4;
LAB_00031e67:
          (*DAT_00076b4c)(pbVar14,iVar8);
        }
        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))
        goto LAB_00031e67;
        if (param_2 != 0) {
          uVar9 = FUN_0001e440();
          printf(" %8s",uVar9);
        }
        pbVar14 = pbVar14 + 4;
      } while (uVar6 < local_b8);
      if (param_2 != 0) goto LAB_0003227a;
    }
    if (local_bc == (undefined4 *)0x0) {
      return 1;
    }
  }
  else {
    pcVar7 = (char *)dcgettext(0,"  Offset table\n",5);
    printf(pcVar7);
    if (bVar17 == bVar16) {
      uVar9 = dcgettext(0,"signature",5);
    }
    else {
      uVar9 = dcgettext(0,"dwo_id",5);
    }
    printf("  slot  %-16s  ",uVar9);
    pbVar14 = local_a8;
    if (local_b8 != (undefined4 *)0x0) {
      do {
        pbVar15 = pbVar14 + 4;
        if (pbVar15 < pbVar1) {
          iVar8 = 4;
LAB_000321db:
          (*DAT_00076b4c)(pbVar14,iVar8);
        }
        else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))
        goto LAB_000321db;
        uVar9 = FUN_0001e440();
        printf(" %8s",uVar9);
        pbVar14 = pbVar15;
      } while (pbVar5 != pbVar15);
    }
    putchar(10);
    local_78 = (undefined4 *)0x0;
    if (local_bc != (undefined4 *)0x0) goto LAB_000319e5;
    local_78 = local_bc;
LAB_00032214:
    putchar(10);
    pcVar7 = (char *)dcgettext(0,"  Size table\n",5);
    printf(pcVar7);
    if (bVar17 == bVar16) {
      uVar9 = dcgettext(0,"signature",5);
    }
    else {
      uVar9 = dcgettext(0,"dwo_id",5);
    }
    printf("  slot  %-16s  ",uVar9);
    if (local_b8 != (undefined4 *)0x0) goto LAB_00031e1e;
LAB_0003227a:
    putchar(10);
    if (local_bc == (undefined4 *)0x0) goto LAB_000316b0;
  }
  local_b4 = (undefined4 *)0x0;
  pbVar14 = local_b0;
  do {
    if (pbVar1 < local_88 + 8) {
      local_6c = 0;
      local_68 = 0;
      local_64 = 0;
      local_60 = 0;
    }
    else {
      FUN_000490b0(local_88,&local_6c,&local_64);
    }
    if (pbVar14 + 4 < pbVar1) {
      iVar8 = 4;
LAB_00031f4a:
      iVar8 = (*DAT_00076b4c)(pbVar14,iVar8);
      if (iVar8 != 0) {
        if (param_2 == 0) {
          if (local_b8 != (undefined4 *)0x0) {
LAB_00031f85:
            local_b0 = (byte *)0x0;
            pbVar15 = pbVar5 + (iVar8 + 0x3fffffff) * uVar2 + uVar2 * local_98;
            pbVar12 = local_a8;
            do {
              local_b0 = (byte *)((int)local_b0 + 1);
              if (pbVar15 + 4 < pbVar1) {
                iVar10 = 4;
LAB_00032035:
                uVar9 = (*DAT_00076b4c)(pbVar15,iVar10);
              }
              else {
                uVar9 = 0;
                if ((pbVar15 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar15, iVar10 - 1U < 8))
                goto LAB_00032035;
              }
              if (param_2 == 0) {
                if (pbVar12 + 4 < pbVar1) {
                  iVar10 = 4;
LAB_00032055:
                  uVar6 = (*DAT_00076b4c)(pbVar12,iVar10);
                  if (7 < uVar6) {
                    uVar9 = dcgettext(0,"Overlarge Dwarf section index detected: %u\n",5);
                    warn(uVar9,uVar6);
                    goto LAB_00032001;
                  }
                }
                else {
                  if ((pbVar12 < pbVar1) && (iVar10 = (int)pbVar1 - (int)pbVar12, iVar10 - 1U < 8))
                  goto LAB_00032055;
                  uVar6 = 0;
                }
                local_78[iVar8 * 0x1a + (uVar6 - 8)] = uVar9;
              }
              else {
                printf(" %8d",uVar9);
              }
LAB_00032001:
              pbVar12 = pbVar12 + 4;
              pbVar15 = pbVar15 + 4;
            } while (local_b0 < local_b8);
            if (param_2 != 0) goto LAB_0003201d;
          }
        }
        else {
          uVar9 = FUN_0001eb80(local_64,local_60,local_5c);
          pcVar7 = (char *)dcgettext(0,"  [%3d] 0x%s",5);
          printf(pcVar7,local_b4,uVar9);
          if (local_b8 != (undefined4 *)0x0) goto LAB_00031f85;
LAB_0003201d:
          putchar(10);
        }
      }
    }
    else if ((pbVar14 < pbVar1) && (iVar8 = (int)pbVar1 - (int)pbVar14, iVar8 - 1U < 8))
    goto LAB_00031f4a;
    local_b4 = (undefined4 *)((int)local_b4 + 1);
    local_88 = local_88 + 8;
    pbVar14 = pbVar14 + 4;
  } while (local_b4 < local_bc);
LAB_000316a3:
  if (param_2 == 0) {
    return 1;
  }
LAB_000316b0:
  putchar(10);
  return 1;
}

